2012-01-08 69 views
0

我想從一個對象的對象列表的引用,得到對象的列表在C#中對象的引用

所以參考我想的對象類型

我將在下面的說明例如

我有像

method (ref Foo foo) 
{ 
// 
} 

的方法和我的Foo

的 0列表

,我想叫這個

method(ref listFoo[i]) 

所以這個返回listfoo的參考,我想foo​​的數量我在列表中的參考

感謝

+0

那麼問題是什麼? – Tudor 2012-01-08 22:41:58

+0

我希望列表中的foo的引用不是listfoo的引用 – user1137486 2012-01-08 22:48:11

+0

聽起來有點像功課---如果是這樣,請添加#homework標籤 – 2012-01-08 22:50:42

回答

1

如果你的意思直接數組引用;你無法通過列表獲得。並非最不重要的,這是因爲這個列表可以在任何時候自由地重新分配底層數組 - 這讓您的參考充其量只會讓人困惑。

如果是數組,則可以使用您提到的method(ref arr[index])方法;但只有與數組。

注:這一招是隻在兩種情況下有用:

    重新分配數組中的值
  • 要訪問原位一個struct,而不會引起它是複製

對於大多數用途,傳遞對象引用是細的,即

Method(Foo foo); // Foo is a class 
... 
Method(list[i]); // pass the reference to the object, unrelated to the container