字符串和const字符串之间的区别

O.O*_*O.O 6 c# refactoring

我正在使用的重构工具经常表明我改变了这样的东西:

string title = "Some title.";
Run Code Online (Sandbox Code Playgroud)

const string title = "Some title.";
Run Code Online (Sandbox Code Playgroud)

为什么,差异是什么?

谢谢!

Gui*_*rte 5

const 是常量变量的前缀。一种在运行时不会改变的。

通常,如果您有一个满足此条件的变量,您应该将其声明为常量 (const),以避免代码中的错误并启用编译优化。

这就是重构工具为您做这件事的原因。

  • 请注意,当然“常量变量”是矛盾的。根据定义,常量不是变量。 (4认同)
  • 它不仅仅是一个在运行时不会改变的变量——它是一个文字表达式。它不再是对任何东西的引用,它本质上是编译器将实际常量值复制/粘贴到所有“调用站点”中。 (3认同)