Bonjour à tous,
Je suis en train de ré-écrire du code C/C++ en C#. J'ai un fonction C à effet de bord qui modifie une valeur passée par référence:
void mafonction(int& i)
{
i = 2;
}
Même si c'est pas tip top comme code, je ne voudrais pas trop modifier ce qui a été fait. Donc: est-ce qu'il est possible d'écrire directement l'équivalent en C# ?
Merci :)


Très simple. Tu utilises le mot-clé ref. Aussi bien dans la déclaration de la fonction que dans l'appel. Exemple:
class Program { void mafonction(ref int i) { i = 2; } static void Main(string[] args) { Console.WriteLine("CSharp"); Program p = new Program(); int i = 1; Console.WriteLine(i); p.mafonction(ref i); Console.WriteLine(i); } }Super, merci :)