当我清除先前分配给它的列表时,C#字典值清除....为什么?

Dan*_*ano 1 c# dictionary

Dictionary <string, List <SaleItem>> saleItemNew = new Dictionary<string, List<    SaleItem>> ();

saleItems = new List <SaleItem> ();

saleItemNew.Add("1", saleItems);
Run Code Online (Sandbox Code Playgroud)

此时,Dictionary中的列表具有值.

saleItems.Clear();
Run Code Online (Sandbox Code Playgroud)

但是,当我清除之前分配给它的列表时,字典的值列表现在为空......为什么?

jjx*_*tra 11

字典包含对列表的相同引用,因此修改列表将更改两个引用.

有关引用类型的Microsoft文档:http://msdn.microsoft.com/en-us/library/490f96s2.aspx