设想
我有一个用于声明string
程序周围使用的常量的类:
public static class StringConstants
{
public const string ConstantA = "ConstantA";
public const string ConstantB = "ConstantB";
// ...
}
本质上,常量的实际值是什么并不重要,因为它在分配和使用时使用。这只是为了检查。
常量名称是不言自明的,但我想尝试避免多次使用相同的字符串值。
我想做什么
我知道这nameof()
是在编译时评估的,因此完全可以将const string
' 值分配给nameof()
a 成员。
为了省去写出这些神奇的字符串,我考虑过使用nameof()
常量本身。
像这样:
public static class StringConstants
{
public const string ConstantA = nameof(ConstantA);
public const string ConstantB = nameof(ConstantB);
// ...
}
问题...
nameof()
我想除了重构之外,使用 , 并没有真正的好处?
nameof()
分配常量时使用有什么影响吗?
我应该坚持只使用硬编码的字符串吗?