【问题标题】:How to define a constant with more than one value in c#如何在c#中定义一个具有多个值的常量
【发布时间】:2014-02-28 10:07:46
【问题描述】:

这个问题看起来有点傻,但我需要用两个可能的长值定义一个字符串常量...

例如:

BS_RUN_STAGE_SUCCESSFUL 可以是代码:2010 也可以是 2110..

在另一种情况下,常量只有一个:

BS_PROCESS_SUCCESSFUL = 2050

public const long BS_PROCESS_SUCCESSFUL = 2050; 

有什么想法吗? 提前致谢!

【问题讨论】:

  • 值会在编译时决定吗?
  • 我同意第一句话。
  • 什么是“另一种情况”?为什么不能定义 2 个常量并使用 if 决定要使用哪一个?
  • const不能指定多个值,const用于声明常量字段或局部常量
  • 不,卢克,我从日志文件中读取了内容...

标签: c# constants


【解决方案1】:

const 是对编译器的承诺:我不会改变这个值。 因此,const 变量只能有一个值。

既然你说你希望它来自一个配置文件,你可以将它声明为readonly,这样一旦你在检索到配置值后设置它就可以防止任何进一步的修改。

public readonly long BS_PROCESS_SUCCESSFUL = yourMethodToRetrieveTheValue();

【讨论】:

    【解决方案2】:

    常量只能有一个值,即使你想在运行时给出它的值也不能改变

    【讨论】:

      猜你喜欢
      • 2011-10-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-02-19
      • 2012-06-19
      • 1970-01-01
      • 2010-10-03
      相关资源
      最近更新 更多