是否值得插入`const`-correctness

Mau*_*aus 12 c++ coding-style const-correctness

我目前面临的是由一些高级程序员编写的C++项目,该项目由大约400个文件和200个类组成.

代码精心编写,工作正常,稳定.

虽然我正在添加一些功能,但对我而言,通常的做法是注意 - const正确性.

但是,如果我开始声明我的新成员函数const,那么为了使事情有效,调整旧代码是没有意义的.

  • 我应该投入大量时间在const这段代码中引入正确性吗?
  • 更糟糕的是,我必须触摸并改变旧的成熟代码,并向老年人解释我在代码审查期间所做的工作.这值得么?

Xio*_*ion 5

Const正确性是静态类型的一种附加层,旨在使开发成熟,可靠和健壮的代码变得更加容易.你说你已经有了后者.在这种情况下,从实用的角度来看,在这样的代码库中强制执行const正确性似乎没有显着的附加价值.

  • 它是静态类型的一个组成部分,而不是它上面的一层. (2认同)

Lig*_*ica 2

我应该投入大量的时间来将const正确性引入到这段代码中吗?

如果您觉得自己可以在合理的时间内完成所有工作,当然可以。const-正确性是一件好事,所以如果您可以调整代码库以正确使用它,那么这永远不会是坏事。

这一切都取决于您有多少可用时间以及您还可以做什么,这更多的是关于项目管理,并且更适合程序员。SE

更糟糕的是,我还要去触摸、修改旧的成熟代码,并向前辈解释我在代码审查期间做了什么。这值得么?

这对他们来说当然是值得的(推而广之,对其他人来说也是值得的)。听起来他们会在代码审查中学到很多东西,这太棒了!


编辑

正如 molbdnilo 正确指出的那样,这是一个很大的变化,在开始之前您绝对应该对此进行小组讨论。这比您已经完成后在两周内进行代码审查更合适。