【发布时间】:2012-03-23 18:55:38
【问题描述】:
在玩了一下 TimeSpan 类,我开始想知道为什么时间跨度类的属性都是 int32s?
我理解为什么构造函数在创建时间跨度时采用 int32,但如果您查看 MSDN 文档,它会指出:
"当前TimeSpan结构的小时分量。返回 值范围从 -23 到 23。”
并且该属性看起来像这样
公共 int 小时 { 获取; }
我的第一个直觉是它正在与 TimeSpan.TotalHours 共享某种数据,但这是双倍的。
这是我完全忽略的 int32 而不是 int8 的原因吗?还是我错过了结构中的一些隐藏功能?
【问题讨论】:
-
可能是因为
Int32是高度编译器优化的。
标签: .net design-patterns struct