IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

Donner à un paramètre une valeur initiale seulement au moment de la compilation d'une Fonction


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    retraité
    Inscrit en
    Février 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 6
    Par défaut Donner à un paramètre une valeur initiale seulement au moment de la compilation d'une Fonction
    Bonjour,
    Je voudrais affecter une valeur à une variable au moment de la compilation, quitte à la modifier au cours de l’exécution après une partie de code exécuté une seule fois la première fois.
    Je « connaissais » le FORTRAN où cela se faisait par : Data A/3/ pour donner à A la valeur 3
    Comment fait-on en VB ?

    Merci pour votre aide

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 202
    Par défaut
    !?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    private _a as integer = 5
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    retraité
    Inscrit en
    Février 2016
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Février 2016
    Messages : 6
    Par défaut Erreur de syntaxe
    Bonjour,

    Merci pour cette réponse rapide. Je travaille avec un Mac sous OS X 10.10.5

    J'avais écrit :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private CLE as integer = 0
    ce qui semble incorrect.

    Voir ci-dessous ce que je voulais faire dans l'extrait de code ci-dessous
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    Private CLE as integer = 0
    If (CLE = 0) Then
            Diverses instructions
            CLE = 1
    Else
            Autres instructions
    End If
    Je n'ai donc pas pu tester.

    Merci

  4. #4
    Membre Expert
    Avatar de wallace1
    Homme Profil pro
    Administrateur systèmes
    Inscrit en
    Octobre 2008
    Messages
    1 966
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Administrateur systèmes
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1 966
    Billets dans le blog
    7
    Par défaut
    Bonsoir,

    On ne va pas tergiverser (même si la plupart se sont rués pour te répondre ) , quand on passe d'un langage à un autre on passe obligatoirement pas l'apprentissage du langage et ses particularités :

    http://plasserre.developpez.com/cour...?page=principe

    PS : ce n'est pas que que je ne veux pas te donner la réponse mais il serait fastidieux d'arpenter les particularités du langage et de l'EDI.... dans ce topic

    A+

  5. #5
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    En principe, cela devrait marcher tel quel. Je ne vois pas d'erreur. Cependant, ce qui est universellement apprécié et presque exigé c'est de présenter le code indenté et entre balises. Une fois que le code est écrit ou collé, il suffit de le sélectionner et de cliquer sur le dièse (#) au bout de la deuxième barre d'outils.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Private CLE as integer = 0
    'les parenthèse ne sont pas obligatoires, sauf pour imposer un ordre
    'particulier dans l'évaluation des expressions logiques
    If CLE = 0 Then
         Diverses instructions
         CLE = 1
    Else
          Autres instructions
    End If
    En prime, le code sort indenté et numéroté.

    Ceci dit, tu peux vérifier si c'est ta ligne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Private CLE as integer = 0
    qui cause problème, tu peux procéder de la façon suivante :

    Tu mets un point d'arrêt (F9) sur cette ligne-là ou un peu avant, cela n'a pas vraiment d'importance, sauf si tu es très pressé.
    Tu lances ton programme et tu agis comme si tu ne savais pas qu'il s'arrêterais.
    Une fois qu'il est arrêté, et pas avant, tu peux mettre un espion sur ton CLE.
    Tu exécutes ta ligne au pas-à-pas et tu regardes la valeur de CLE dans ta fenêtre Espions. (Tu l'aurais aussi dans ta fenêtre "Variables locales". En comparant les deux, tu pourras choisir celle que tu aimes le mieux.)

    Si ta ligne s'est vraiment exécutée et que CLE vaut n'importe quoi d'autre que 0, c'est que c'est anormal.

    Ce que tu peux essayer c'est :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Private CLE as Integer
    CLE = 0
    ou même :

    Sauf horreur de ma part, une variable est Private par défaut.

  6. #6
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 202
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : .NET / SQL SERVER

    Informations forums :
    Inscription : Avril 2007
    Messages : 14 202
    Par défaut
    en effet, le mieux est de lire un cours avant de commencer

    parce qu'on ne peut pas mettre de code dans une classe sous la déclaration d'une variable
    par contre tu peux faire une propriété avec lazy initialisation ou encore mieux mettre du code dans le constructeur (appelé au moment de l'instanciation)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

Discussions similaires

  1. determiner et forcer des valeurs en des multiples d'une valeur initiale
    Par kaglaborn dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 22/12/2015, 09h05
  2. [XL-2003] Récupérer une valeur calculée sur un sheet pour le renvoyer dans une listbox
    Par Thierry2B dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 21/01/2011, 09h55
  3. Remettre liste déroulante à une valeur initiale
    Par silverfab34 dans le forum jQuery
    Réponses: 1
    Dernier message: 26/07/2010, 22h39
  4. Remplir un tableau à partir d'une valeur initiale
    Par Maliciouss dans le forum Pascal
    Réponses: 9
    Dernier message: 13/12/2009, 14h46
  5. Réponses: 8
    Dernier message: 26/01/2008, 23h00

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo