Bonjour,
Soit le délégué suivant et son initialisation
Si j'ajoute une méthode nommée CheckStateValid à ce delegué ainsi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public delegate bool isValidDelegate(); public isValidDelegate isValid= null;
et qu'ensuite , j'ajoute une nouvelle méthode vers lequel pointe l'instance isValid du délégué isValidDelegate ainsi
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 isValid += new isValidDelegate(CheckStateValid);
Je lis que dans le deuxième cas où j'ajoute la méthode CheckControl , c'est comme ci implicitement j'avais écris l'instruction
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 isValid += CheckControl;
Ce que je ne comprends pas, c'est l'usage de l'opérateur new une deuxième fois .
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 isValid += new isValidDelegate(CheckControl);
Est ce que je dois créer une nouvelle instance du delegué isValidDelegate à chaque fois que je j'ajoute une nouvelle méthode vers lequel une de ses instances déjà créée doit pointer?
A mon sens, non, puisque j'ai déjà crée l'instance isValid par l'instruction.
Que permet de faire donc l'opérateur new , de créer une nouvelle instance de quoi, lorsque j'écris cette instruction?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 isValid += new isValidDelegate(CheckStateValid);
Idem si j'écris
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 isValid += new isValidDelegate(CheckControl);
Pour supprimer la méthode CheckState Valid, pour qu'elle ne soit plus pointée par le délégué.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 isValid -= new isValidDelegate(CheckStateValid);
Quel est l'utilité de l'usage de l'opérateur new.
Merci beaucoup de votre réponse sur ces points,
Cordialement.
new_wave
Partager