Propriete en lecture seul

tobleronne Messages postés 104 Date d'inscription vendredi 8 août 2003 Statut Membre Dernière intervention 1 mars 2005 - 20 févr. 2004 à 15:49
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 - 20 févr. 2004 à 19:03
Bonjour a tous,

Est il possible de faire une propriété avec un HashTable en lecture seul ? ou est on obligé de passé par une fonction.

En faite la problématique est que je voudrais un tableau ou une collection etre accesible qu'en lecture seul, si vous avez autre choses a me soumettre ,'hesitez pas, je suis preneur.

merci a tous

5 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
20 févr. 2004 à 16:41
pour specifier une propriété en lecture seule je ne sais pas si c'est possible

si ce que tu veux retourner est un type de reference, il faut que ta propriété en retourne une copie et dans ce cas tu n'as plus a craindre une modification exterieure

return new ... et tu recrée une instance basée sur celle que tu veux copier.
ou si elles sont disponibles les methodes Clone, CopyTo (il me semble que oui avec le HashTable) pourraient te servir (m'en demande pas, plus pour l'instant je n'ai eu besoin que de la methode new)

Cocoricoooooooo !!!!
0
tobleronne Messages postés 104 Date d'inscription vendredi 8 août 2003 Statut Membre Dernière intervention 1 mars 2005
20 févr. 2004 à 17:52
merci a toi car la je l'avais mis dans une procedure.

dis moi, sais tu a quoi sert le faite dans une class de faire plusieurs constructeurs ? j'ai vu ca plusieurs fois et je ne trouve pas de doc dessus et surtout l'utilité.

merci
0
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
20 févr. 2004 à 18:03
ça s'appelle la surcharge (overload)

Exemple : classe qui fera une connexion distante

Constructeur(string ip, int port)
{
// là tu construit ton IPEndPoint pour la connexion
}

Constructeur(IPEndPoint EP)
{
...
}

l'utilisateur de ta classe (ou même toi le jour où tu t'en sert dans different projets) pourra choisir d'utiliser le constructeur qui lui correspond le mieux : si il a deja un IPEndPoint et qu'il doit le decomposer en string et int pck tu n'as pas prevu le 2eme constructeur C une perte de temps pour lui

(exemple parmis tant d'autres)

Cocoricoooooooo !!!!
0
tobleronne Messages postés 104 Date d'inscription vendredi 8 août 2003 Statut Membre Dernière intervention 1 mars 2005
20 févr. 2004 à 18:28
en faite si un constructeur plante car pas approprié il se rabbat automatiquement sur un autre, c ca ?
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
20 févr. 2004 à 19:03
non pas du tout
C au niveau de la compilation que le constructeur est choisi
si l'utilisateur met (je renomme pck mon nom de classe Constructeur etait pas tres bien choisi) :

Connexion connex = new Connexion("192.168.0.1", 21);


ce sera le constructeur
Connexion(string ip, int port)

qui sera utilisé

et si il met (endpoint est une instance de IPEndPoint)
Connexion connex = new Connexion(endpoint);

ce sera
Connexion(IPEndPoint EP)

qui sera utilisé

et si un "plantage" intervient C une belle croix blanche sur fond rouge qui apparait ^^

Cocoricoooooooo !!!!
0
Rejoignez-nous