是否有允许ref返回值的.net集合类?

是否有允许ref返回值的.net集合类?,.net,optimization,collections,pass-by-reference,c#-7.0,.net,Optimization,Collections,Pass By Reference,C# 7.0,我希望有一个较大值类型(例如向量或矩阵)的列表,并希望按如下方式访问它们: collection[index].X = newvalue; 或 这种语法允许从C#7.0开始,因为我不知道是否有任何集合类已经支持它。我知道vanilla数组允许ref访问,但我需要一个集合。默认情况下,所有类类型都是ref。这意味着,如果您在任何地方修改类,它将在您访问它的任何地方被引用 比如说, List<Test1> col=new List<Test1>(); // add list

我希望有一个较大值类型(例如向量或矩阵)的列表,并希望按如下方式访问它们:

collection[index].X = newvalue;


这种语法允许从C#7.0开始,因为我不知道是否有任何集合类已经支持它。我知道vanilla数组允许ref访问,但我需要一个集合。

默认情况下,所有类类型都是ref。这意味着,如果您在任何地方修改类,它将在您访问它的任何地方被引用

比如说,

List<Test1> col=new List<Test1>(); // add list of objects
foreach(var testobj in col)
{
testobj.anyproperty= updatevalue; // this will update in collection also
}
List col=new List();//添加对象列表
foreach(col中的var testobj)
{
testobj.anyproperty=updatevalue;//这也将在集合中更新
}

问题是关于值类型(如结构)。
List<Test1> col=new List<Test1>(); // add list of objects
foreach(var testobj in col)
{
testobj.anyproperty= updatevalue; // this will update in collection also
}