Porté d'une variable privée (remise en question)

Résolu
MPousse Messages postés 7 Date d'inscription jeudi 22 janvier 2004 Statut Membre Dernière intervention 2 décembre 2005 - 26 sept. 2005 à 08:32
MPousse Messages postés 7 Date d'inscription jeudi 22 janvier 2004 Statut Membre Dernière intervention 2 décembre 2005 - 26 sept. 2005 à 17:44
Bonjour,

j'ai constaté qu'il était possible d'utiliser une variable privée d'une manière un peu spéciale (voir example):



public class Maison

{

private int nbFenetre = 4;



public void copyTo(Maison _m)

{

_m.nbFenetre = nbFenetre;

}

}

(Dans cete exemple, j'accède à la variable nbFenetre de _m depuis l'extérieur de _m; nbFenetre étant privé)



Est-ce que quelqu'un pourrait me dire si ce bout de code (qui a l'air
de fonctionner) est du bidouillage (voir un bug) ou est une bonne
utilisation du langage C#. Il me permet de garder mes variables
privée mais néanmoins de faire une copie profonde... (en l'occurence
dans l'exemple il n'y a qu'un entier mais cela fonctionne aussi pour
accéder à des objets privés)



J'utilise Visual Studio 2005 beta2



Merci



MPousse

2 réponses

taoetc Messages postés 346 Date d'inscription lundi 8 septembre 2003 Statut Membre Dernière intervention 3 septembre 2007 3
26 sept. 2005 à 08:45
Dans ta classe, tu peux manipuler tes variables privé comme tu l'entends. C'est une pratique normal du c#, enfin, de l'objet.
Moi, j'aurais peut etre mis une propriété correspondant à nbfenetre

public int NbFenetre
{
get { return nbfenetre;}
set {this.nbfenetre = value;}
}

et marqué ensuite :
public void copyTo(Maison _m)
{
_m.NbFenetre = this.nbFenetre;
}

In the mood for ... ba heu, for quelque chose qui est vachement bien ( oui je sais , n'importe quoi)
3
MPousse Messages postés 7 Date d'inscription jeudi 22 janvier 2004 Statut Membre Dernière intervention 2 décembre 2005
26 sept. 2005 à 17:44
Merci pour cette réponse,

je n'avais encore jamais utilisé des variables privées de cette manière
(pensant elles étaient uniquement accessible par l'objet concerné
"this").



MPousse
0
Rejoignez-nous