public static string BoldStartTag { get { return "<B>"; } }
VS
public static readonly string BoldStartTag = "<B>";
或
public const string BoldStartTag = "<B>";
哪一个更受欢迎?我会认为readonly / constant变量因为我没有在属性中进行任何计算(只是返回)。此外,C#编译器将弹出readonly属性的方法,而readonly变量只是IL中的变量。
你的想法?
答案 0 :(得分:9)
我认为这里要考虑的一些最有趣的观点是他在更新中提到的那些:
- 反射在变量与属性上的工作方式不同,因此如果依赖于反射,则更容易使用所有属性。
- 您无法对变量进行数据绑定。
- 将变量更改为属性是一个重大变化。
答案 1 :(得分:4)
出于封装原因,公共值的首选方法始终是属性。
但是,对于您的具体示例,我会使用const
- 它不会像BoldStartTag
那样很快就会改变。
答案 2 :(得分:1)
为什么不使用const?我原本以为将<B>
作为粗体开头标记将是相当不错的。