Bonjour,

Je ne remets pas en cause l’intérêt du passage par référence, que c'est pratique temps en temps !

Je m’interroge en réalité sur les passages par références implicite.

Admettons le code suivant :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
public class A {
   List<string> list = new List<string>();
   public A() {
      B b = new B(list);
   }
}
 
public class B {
   List<string> list;
   public B(List<string> l) {
      list = l;
   }
}
Pouvons-nous admettre que c'est effectivement du passage par référence implicite ?
En effet, si nous modifions l'objet "list" dans la classe B, ces modifications seront aussi "répercuté" dans l'objet "list" de la classe B.

Je vous pose cette question car un ami et moi-même ne sommes par d'accord ... il stipule que ce serait un autre mécanisme, mais je n'y crois pas.

Merci.