为什么抛出InvalidCastException?有人可以形容我这种行为吗?
object zero = 0;
decimal? dec = (decimal?)zero;
Run Code Online (Sandbox Code Playgroud)
jas*_*son 15
盒装int只能打开一个盒子int.但是,这是合法的:
object zero = 0;
decimal? dec = (decimal?)(int)zero;
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅MSDN或ECMA 334 C#规范.这里的关键是以下内容:
拆箱是从类型对象到值类型或从接口类型到实现接口的值类型的显式转换.拆箱操作包括:
编辑:这篇链接的文章值得退出评论.谢谢Rob Kennedy!
| 归档时间: |
|
| 查看次数: |
3873 次 |
| 最近记录: |