2012-01-08 40 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