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

Delphi Discussion :

Faire comme 'Mutable' en c++


Sujet :

Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 23
    Par défaut Faire comme 'Mutable' en c++
    Bonjour a tous,

    je developpe une classe et j'ai une variable 'public' que je souhaite modifer depuis les differentes fonctions et procedure de ma classe mais j'aimerai que l'utilisateur de la classe ne puisse pas la modifier, a la maniere de 'mutable' en c++.

    Merci et bonne journée

  2. #2
    Membre éclairé
    Homme Profil pro
    Freelance
    Inscrit en
    Décembre 2003
    Messages
    423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Freelance

    Informations forums :
    Inscription : Décembre 2003
    Messages : 423
    Par défaut
    Salut,
    Le mieux dans ce cas là ne serait-il pas de la passer en privé et généré l'accès comme si c'était une propriété avec uniquement un Read ?

    Je m'explique :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Private
    fTa_variable : TonType
    Function GetTavariable():TonTYpe;
     
    Public
    property TaVariable : TonType Read GetTaVariable();
    Je sais pas si c'est ce que tu veux et si la syntaxe rigoureuse est celle-ci mais dans l'idée je pense que ça peut se faire ...


    A plus

  3. #3
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 23
    Par défaut
    J'ai est pensé ! Le type de ma variable est un TBitmap, le probleme avec cette methode c'est qu'elle renvoit une copie de la variable alors que ce que je veux c'est agir sur la meme variable. Merci de ta réponse en tout cas !

  4. #4
    Membre émérite Avatar de Yurck
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 682
    Par défaut
    Bonjour,

    Ce n'est pas une copie de la variable mais une référence à celle-ci (soit un pointeur en c).

    a+

  5. #5
    Membre émérite Avatar de Yurck
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2005
    Messages
    682
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 16
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2005
    Messages : 682
    Par défaut
    Enfin la fonction de lecture n'est pas nécessaire pour une propriété en lecture seule il suffit de ne pas avoir de procédure d'écriture (spécificateur write)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    Private
    fTa_variable : TonType
     
    Public
    property TaVariable : TonType Read fTa_variable;
    Tes méthodes privées écriront directement dans la variable.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    procedure proc_privee;
    begin
      ...
      fTa_variable := ;  
      ...
    end;
    a+

  6. #6
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    23
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 23
    Par défaut
    Merci, je crois que c'est exactement ça !!

  7. #7
    Membre éclairé
    Homme Profil pro
    Freelance
    Inscrit en
    Décembre 2003
    Messages
    423
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France

    Informations professionnelles :
    Activité : Freelance

    Informations forums :
    Inscription : Décembre 2003
    Messages : 423
    Par défaut
    Citation Envoyé par Yurck
    Enfin la fonction de lecture n'est pas nécessaire pour une propriété en lecture seule il suffit de ne pas avoir de procédure d'écriture
    Tiens je savais pas ça ... mais il est vrai qu'en y réfléchissant un peu ce serait plus logique de pouvoir le faire


    Merci pour l'info

Discussions similaires

  1. Faire comme les methode de JOptionPane
    Par romuluslepunk dans le forum AWT/Swing
    Réponses: 6
    Dernier message: 09/06/2006, 22h30
  2. Que faire comme étude ?
    Par Xo Sonic oX dans le forum Etudes
    Réponses: 7
    Dernier message: 03/06/2005, 15h51
  3. Que peux-t'on faire comme application ?
    Par lalystar dans le forum Java ME
    Réponses: 2
    Dernier message: 11/12/2004, 05h36
  4. [maintenance][performance] Que faire comme maintenance ?
    Par woodwai dans le forum PostgreSQL
    Réponses: 5
    Dernier message: 06/11/2003, 15h39

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