我希望从对象列表中获取引用,
所以引用我想要对象类型
我将在以下示例中解释
我有像
这样的方法method (ref Foo foo)
{
//
}
我有一个Foo列表
List<Foo> listFoo;
我想叫这个
method(ref listFoo[i])
所以这会返回一个listfoo的引用,我希望在列表中引用foo数字
感谢
答案 0 :(得分: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