PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [C#]Referenzen?


Gast
2006-11-06, 21:44:08
in C++ ist es möglich, einen Pointer oder eine Referenz auf z.B. eine Integer-Variable zu deklarieren:

int x = 5;
int *px = &x; // Pointer auf x
int &rx = x; // Referenz auf x
*px = 6; // ändert x auf 6
rx = 7; // ändert x auf 7
// in C++.NET geht auch so was:
int ^dotnet_px1 = gcnew int(5);
int ^dotnet_px2 = dotnet_px1;
*dotnet_px2 = 6; // ändert des Wert der int-Instanz auf 6

ist so etwas auch in C# möglich? Ich würde darauf tippen, daß man da irgendwie mit dem Schlüsselwort ref hantieren muß...

Xmas
2006-11-06, 23:03:14
ref ist nur bei der Parameterübergabe als Referenz von Bedeutung. In als unsafe markiertem Code kannst du int* praktisch wie in C++ verwenden. Ansonsten musst du den Werttyp (z.B. int) in einen Referenztyp einpacken, also eine Klasse mit einem int-Member, ein int-Array oder Container