我知道c++有很多静态分析工具。然而,当我上网搜索时,我找不到一个似乎能够警告那些可能被标记为的值和函数。const
但不是。
所以特别是如果我有一个这样的函数。
int add(int a, const int b) {
int result = a + b;
return result;
}
我想让工具警告我(或发出一个错误)关于变量的信息 a
和 result
本可标为 const
但不是。此外,如果 add
是一个成员函数,我也希望被警告它没有被声明为`const。
所以,首先我需要一个工具来帮助我执行const-correctness,如果可能的话,它应该超越这个范围,应该让我使用 const
在我的代码目前允许的每一种情况下。
有什么工具可以在c++中做到这一点吗?或者,这甚至是一个编译器的选项,在e.g.中,我似乎找不到。clang
中的一个编译器选项,但我似乎找不到。
我在想,也许这将是一个可以用 clang-tidy
如果没有一个工具可以用的话......。
Resharper-C++ 的VisualStudio的警告(它不是免费的)。我不知道他们在幕后使用了什么。它可能只是clang-tidy。