Partage
  • Partager sur Facebook
  • Partager sur Twitter

Déclarer une variable Globale ?

Comment on fait en VB ?

    8 octobre 2011 à 11:43:28

    Merci d'avance .
    ( si vous pouvez m'éclairez aussi , comment aller à la ligne dans un label ? )
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      8 octobre 2011 à 12:13:50

      C'est pas forcément une bonne idée, mais bon...
      Tu peux créer un membre Shared quelque part. Si c'est pour des constantes, crée-toi une classe Constants qui soit Shared et mets ce que tu veux dedans.
      • Partager sur Facebook
      • Partager sur Twitter
        8 octobre 2011 à 12:18:24

        Bonjour,

        Avant de répondre à la question, je me dois de dire 2-3 choses tout de même.

        J'aurais pu commencer par dire "n'en fait pas" mais c'est un peu abrupte :) et comme l'a dit Steve McConnell "Used with discipline, global variables are useful in several situations" (Utilisées avec discipline, les variables globales sont utiles dans certaines situations.)
        Il a également dit "Use Global Data Only as a Last Resort. Before you resort to using global data, consider a few alternatives." (N'utilisez les variables globales Uniquement en tant que derniers recours. Avant cela, essayez d'autres alternatives.)

        Comme alternatives (liste non-exhaustive) il cite d'ailleurs :
        • -Begin by making each variable local and make variables global only as you need to (Commencer par faire uniquement des variables locales et ensuite les rendre globales uniquement s'il le faut.
        • -Distinguish between global and class variables (Faire la différence entre (le besoin) d'une variable globale et celui d'une "variable de classe" (membre statique).
        • -Use access routines (Utilisez des méthodes d'accès.)


        Néanmoins si malgré tout cela il faut tout de même faire une variable globale (chose que personnellement, je ne conseille pas ;) )voilà comment il faut faire :
        Module MyModule
            Public MyGlobalVariable As TypeVariable
        End Module
        

        Ce qui revient en fait à déclarer un membre statique public dans une classe statique d'un point de vue OO.

        Ce qui peut s'écrire dans une optique, un poil moins permissif comme ceci :
        Module MyModule
            Private _MyField As TypeMember
            Public Property MyFieldProperty As TypeMember
                Get
                    ' ici la logique de récupération (avec controles ?)
                    Return _MyField
                End Get
                Set(ByVal value As TypeMember)
                    ' ici la logique d'assignation (avec controles !!)
                    _MyField = value
                End Set
            End Property
        End Module
        


        Cordialement !

        N.B. je devrais arrêter les pavés je me fais toujours griller ! :lol:
        • Partager sur Facebook
        • Partager sur Twitter
        Censément, quelqu'un de sensé est censé s'exprimer sensément.
          8 octobre 2011 à 12:30:33

          Merci ;)
          Et comment aller a la ligne dans un label ?
          • Partager sur Facebook
          • Partager sur Twitter
            8 octobre 2011 à 13:49:06

            Un peu de recherche dans la documentation MSDN et/ou sur Google (ou Bing ou autre moteur de recherche) ne ferait pas de mal ...

            <mode trop gentil>jette un coup d’œil par ici</mode trop gentil>

            Cordialement !
            • Partager sur Facebook
            • Partager sur Twitter
            Censément, quelqu'un de sensé est censé s'exprimer sensément.

            Déclarer une variable Globale ?

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown