【发布时间】:2010-09-17 06:48:33
【问题描述】:
为什么在 .NET 框架中一个布尔值消耗 4 个字节,一个字符消耗 2 个字节?布尔值应占用 1 位或至少小于 char。
【问题讨论】:
-
我也问过自己同样的问题。
-
出于好奇,一个结构体中的 2 个布尔值占用了多少空间?
-
您期望有多少个布尔值?通常值类型只会被堆栈消耗,所以除非你处理大量的布尔值(比如一串字符),否则我不会担心。
-
如果您有很多二进制值,请使用 System.Collections.BitArray。
-
您正在查看的是盒装布尔的大小,而不是真实的大小(有关详细信息,请参阅我的答案)!您选择的答案是错误的。