在使用常量和文字时,什么是好的做法?
本文关键字:什么 常量 文字 | 更新日期: 2023-09-27 18:15:28
我正在编写一个应用程序,我想确保在常量和文字方面有一个良好的编码标准。问题是,我不完全确定应该在什么地方使用常量,在什么地方使用常量就太过分了!例如…
public class MyWindow : Window
{
public const string WindowTitle = "This seems like overkill!";
public MyWindow() : base()
{
this.Title = WindowTitle;
}
}
所以我的问题是,决定什么应该被声明为常量,什么不应该被声明为常量,最广泛接受的标准是什么?我猜只在一个地方使用的任何东西都应该是字面量(例如窗口的标题),并且使用多次的任何东西都应该是常量?
const
字段存储在汇编元数据中。当您在其他程序集中引用该程序集时,const
字段的VALUES将直接复制到引用程序集中。
因此,如果您决定更改const
字段,您将不得不重新编译引用它的所有程序集以查看更改。
例如,在Assembly1中有:
public class Class1
{
public const string ConstString = "Const";
}
并在Assembly2:
中引用它class Class2
{
void DoSomething()
{
Console.WriteLine(Class1.ConstString);
}
}
Class1.ConstString
将在编译时被替换为常量("Const"
)的值。
常量用来表示常量变量,帮助编译器进行优化,并帮助程序员不改变不应该改变的东西。
由于在这个主题上没有广泛使用的规范,所以这取决于您想要编写的代码和项目的大小有多完美。我想说,最佳实践是尽可能使用const
。它通常不会经常发生,无论如何,真正成为一个问题和编程风格的智慧,这是一个很好的实践,良好的编码。