我有一个关于存储数据及其内存占用的非常基本的问题。
我有一个 List<t>
存储我需要的基础对象。类型 t 有一个 int id 来定义它,以及其他字段。
我现在有一本字典。如果我创建一个 Dictionary<t, int>
,其中 t 是值的对象,如果我创建 Dictionary<int, int>
,内存分配会高得多吗? ,即存储了 t 对象的副本,还是仅再次存储对 t 的引用?
谢谢
最佳答案
这取决于 T
是什么。如果T
是引用类型(即类
),那么字典中只会存储一个引用。如果 T
是一个值类型(一个 struct
),那么将存储一个副本。
关于c# - .NET 内存大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4188402/