我希望能夠分配值列出對象,而不直接引用他們:是否可以存儲對列表中的對象的引用?
僞例如:
List<int> intList = new List<int> { 0 };
???? intPointer = ref intlist[0];
*intPointer = 1; // I know * isn't possible here, but it is what I'd like to do
Console.WriteLine(intList[0]);
,它將輸出1
。
我在想這是不可能的,但我只是想確保我沒有失去任何東西。
此外,我不在尋找一個使用unsafe
的示例,我很好奇這是否可以在託管代碼中使用。
「不直接引用它們」是指什麼? – Groo
我想通過另一個變量 – afuzzyllama
知道'list [0]中是什麼所以你想引用單個數組元素?請參閱C#中的[reference vs value types](http://www.albahari.com/valuevsreftypes.aspx)。 C#中的引用類型(任何'class'的實例)總是通過引用傳遞(*類似於*在C中傳遞指針)。另一方面,值類型在傳遞時總是被**複製。所以,對於值類型(像'int','float','struct'和類似的),這是不可能的。但是如果你讓它們成爲引用類型的屬性,那麼你將能夠獲得一個引用。 – Groo