【发布时间】:2009-12-02 15:18:32
【问题描述】:
[TestClass]
public class MsProjectIntegration {
const int? projectID = null;
// The type 'int?' cannot be declared const
// ...
}
为什么我没有const int??
编辑: 我想要一个可以为空的 int 作为 const 的原因是因为我只是用它来从数据库加载一些示例数据。如果它为空,我将在运行时初始化示例数据。这是一个非常快速的测试项目,显然我可以使用 0 或 -1 但int? 只是感觉就像我想做的正确的数据结构。 readonly 似乎是要走的路
【问题讨论】:
-
我真的想不出你需要一个值为空的常量的情况。可以请教一下吗?
-
最佳实践:仅对逻辑上永远不变的事物使用常量。好:一打中的物品数量,猫王出生的年份,铅的原子序数。坏:版本号——它们从一个版本到另一个版本;变化的东西不应该是常数。糟糕:当前日元兑欧元汇率;每秒都在变化。
-
是的,我基本上只是将它用作临时配置文件,绝对不是最佳实践
-
那不应该是“是的,非常好!我基本上是……” 幽默>
标签: c# null constants nullable