我继承了用于多个 Windows 应用程序的大型 C++ 代码库,这些应用程序已成功地被许多客户使用。
- 代码库很大,>1mill LOC。
- 该代码库已有 15 年以上的历史。
- 代码库在某些领域以 C 编程风格和/或不是很现代的 C++ 风格为主,例如不使用标准 C++ 集合和算法。
- 不幸的是,代码库只编译了警告级别 2(Visual C++ 中的 /W2)。我想提高到 3 级 (/W3) 以增加安全性并为 64 位做准备。
提高到警告级别 3 的最大问题是收到的许多涉及有符号/无符号不匹配的警告,我认识到解决现有代码库的所有这些问题将是一项非常艰巨的任务。
什么是确保和强制提交到代码库的新代码以增加的警告级别编译的好方法?
更一般地说,这个问题可以改写为如何将提高的编程质量强制到新提交的代码中。如果您不做任何事情,根据我的经验,新代码倾向于受到影响和样式类似于现有代码,而不是改进为更现代的标准。