Je suis curieux de savoir si le paramètre optionnel introduit dans C# 4 est rétrocompatible ou non? Permettez-moi de clarifier ma question avec un exemple simple. Supposons que j'écris le code suivant dans C# 4 sur .NET2 dans VS2010:Le paramètre optionnel dans C# 4 est-il compatible avec les versions antérieures?
public void Foo(int val1, int val2, int val3 = 5){ .... }
Maintenant, je compilé le code, faire une dll et la référence à un C# 2/C# 3 projet sur .NET2. Dans l'éditeur de code (autre que VS2010, dis VS2008) que vais-je voir dans intellisense?
Deux méthodes surchargées comme:
public void Foo(int val1, int val2) public void Foo(int val1, int val2, int val3)
Autre chose comme:
public void Foo(int val1, int val2, int val3) public void Foo(int val1, int val2, int val3 = 5) //VS2008 is not supposed to show this
Comment je suis censé appeler la méthode C# 4 en C# 2 projet ?
Merci beaucoup. Cela clarifie ma question. Je vous remercie. –