泛型类型作为函数参数

static void Main(string[] args)        {

List<string> list = new List<string>();

list.Add("abc");

ChangeOrNot(list);

   var query = from p in list  select p;           

 foreach (string l in query)  { Console.WriteLine(l); }

}

 private static void ChangeOrNot(List<string> list)

 {           

 list.Add("def"); 

 }

输出abc def,并没有加ref关键字.

求解原理.


阿波罗的战车
浏览 800回答 2
2回答

慕神8447489

List<T>是引用类型,也就是说你传入的参数实际上是它的内存地址,函数中对参数中作的任何改变实际上都是对原来的List操作
打开App,查看更多内容
随时随地看视频慕课网APP