【问题标题】:How many bytes of memory does each type in .NET consume (32-bit environment)? [closed].NET 中每种类型消耗多少字节的内存(32 位环境)? [关闭]
【发布时间】:2012-11-01 07:22:49
【问题描述】:

intboolfloatdoubledecimalobjectstring 这样的类型在作为字段添加到上课?

【问题讨论】:

  • 这取决于几个因素,例如 .NET 版本和位数(32 位与 64 位)......确切的内存布局通常在运行前是未知的!大致数字可以查看MSDN
  • @Yahia 实际上 32 位与 64 位并不重要。字节将是字节,Int32 将是 Int32 等
  • @JohnDemetriou 你有来源支持你的主张吗?
  • @user1306322 当然,让我找到它:) 但我说的是 c#,只是为了清楚链接 msdn.microsoft.com/en-us/library/ms228360(v=vs.90).aspx Int32 明确表示 32 位宽度,无论系统如何。称它为 int 只是一个简写(或糖衣)也是来自 SO stackoverflow.com/questions/164643/… 的问答
  • 哦,这就是你的意思。我以为您的意思是它们根据目标平台位数占用不同数量的内存。

标签: c# .net memory memory-management


【解决方案1】:

This page 以位为单位显示每种数据类型的大小(除以 8 得到字节):

字节 8 字节 8 诠释 32 单位 32 短 16 超短 16 等等...

对象和字符串是引用类型。引用类型至少占用它们包含的所有字段的大小加上引用本身的大小。

相关

【讨论】:

  • 我想你忘了提到数字代表位而不是字节
猜你喜欢
  • 1970-01-01
  • 2012-09-12
  • 1970-01-01
  • 2010-09-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多