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 :

Exposition de variables


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 247
    Par défaut Exposition de variables
    Salut à tous,

    Je suis en train de me prendre la tête sur un problème en VB2005

    J'ai créé une classe, dans cette classe, j'ai créé un type structure.

    J'ai ensuite une propriété de type ma structure.

    Vu de l'extérieur de la classe, je ne souhaite pas exposer mon type structure. je ne souhaite qu'il soit accessible.
    Il faut que chaque membre de la structure ne soit accessible que par la propriété.

    J'ai tenté de mettre mon type structure en Private, ma propriété en Public mais j'ai un message d'erreur que je n'arrive pas à résoudre.

    'MaPropriete' ne peut pas exposer le type 'MaStructure' dans namespace 'ProjetUtilisantLaClasse' à travers class 'MaClasse'.
    Un peu d'aide serait la bienvenue !

  2. #2
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    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 197
    Par défaut
    si A (publique) est du type B
    B doit être publique aussi c'est logique !
    enfin ca dépend aussi de la classe, si la classe n'est pas publique B n'est alors pas exposé donc A peut être publique mais de toute facon se limite à la définition de la classe


    après par contre il est possible de restreindre l'utilisation de ta structure à l'extérieur d'autres manières
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  3. #3
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 247
    Par défaut
    Ok, donc le type doit être public, je ferais avec.

    D'ailleurs le coup de la propriété n'est pas une bonne idée non plus. Je ne peux modifier la valeur des membres de la structure à travers la propriété.

    Je suis obligé de déclarer ma variable comme une variable publique à la place d'une propriété.

  4. #4
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    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 197
    Par défaut
    je crois que tu devrais revoir les bases de .NET
    (par ici par exemple http://plasserre.developpez.com/vsommair.htm)

    que ca soit une variable publique ou une propriété l'accès est à peu près le meme (une propriété est une variable qui peut avoir du code)

    de toute façon, même avec une propriété readonly, les membres de la structure seraient modifiables ! (si la structure les défini comme modifiables)
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

  5. #5
    Modérateur
    Avatar de sevyc64
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Janvier 2007
    Messages
    10 247
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Janvier 2007
    Messages : 10 247
    Par défaut
    Je suis d'accord.

    J'ai l'habitude d'utiliser les propriétés mais c'est la première fois que j'essaye d'y passer une structure.

    Voila le message que j'obtient lorsque je fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ImpBons.Entete.DO_Domaine = 1
    Cette expression est une valeur et ne peut donc pas être la cible d'une assignation.

    ImpBons étant l'instance de ma classe, Entete la propriété de type structure et DO_Domaine le membre de la structure

  6. #6
    Expert éminent Avatar de Pol63
    Homme Profil pro
    .NET / SQL SERVER
    Inscrit en
    Avril 2007
    Messages
    14 197
    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 197
    Par défaut
    DO_Domaine n'est pas readonly ?

    mets nous le code de la structure et de la propriété peut etre ...


    et pourquoi une structure plutot qu'une classe ?
    Cours complets, tutos et autres FAQ ici : C# - VB.NET

Discussions similaires

  1. Réponses: 4
    Dernier message: 18/07/2002, 13h32
  2. variables locales ou globales ???
    Par elvivo dans le forum C
    Réponses: 13
    Dernier message: 03/07/2002, 08h22
  3. Procédure avec un nombre variable d'arguments
    Par charly dans le forum Langage
    Réponses: 15
    Dernier message: 21/06/2002, 11h08
  4. Réponses: 4
    Dernier message: 05/06/2002, 14h35
  5. les variables globales static
    Par gRRosminet dans le forum C
    Réponses: 8
    Dernier message: 27/04/2002, 08h34

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