Bonjour,
Petite question , sur un de mes objets j'ai implémenté l'interface Icloneable pour pourvoir cloner mon objet.
Cet objet contient une list<T>
Ma question est dans la méthode clone(), comment je fais une copie de le liste en étant sûr que les valeurs de ma liste seront vraiment des copies et pas des références.
Dans le sens ou si je change une valeur de la nouvelle liste ca ne changera pas la valeur de l'ancienne.
J'ai fais:
newGroup.Products = New List<Product>(this.Products)
Et en regardant un peut le constructeur de la class list<T> dans reflector
Il utilise la méthode CopyTo de la source
Qui a son tour utilise la Copy de la classe Array
Qui au final arrive sur une méthode internal.
Donc est ce que cette méthode copy de la class Array copie bien une nouvelle instance?
Merci a ceux qui auront la patience de me lire
.
Partager