C# · 12月 23, 2021

通用列表是存储在堆栈中还是存储在C#中的堆中?

通用列表是存储在堆栈还是堆上?

//List of IntsList<int> myInts = new List<int>();myInts.Add(5);myInts.Add(10);myInts.Add(20);

myInts是存储在堆栈还是堆上?如果我在列表中添加一个int,是否会发生装箱或拆箱?

解决方法 列表与LT; T>是一种参考类型.在内部它使用T []. Array是一种引用类型.引用类型的实例存储在堆上.由于示例中的列表是List< int>它只能保持整数并且不会发生拳击.如果您需要将值类型视为引用类型,则会发生拳击.