作者:xiaobei爱吃肉 | 来源:互联网 | 2023-08-28 15:33
我正在使用Visual Studio 2015,并且我们的(c ++)项目在过去几年中增长了很多。
(不幸的是)静态分析目前仍在进行中,因此,我正在寻找其他方法来改善我们的代码质量。我偶然发现的问题之一是在代码的某些较旧部分中(非)使用非常量静态变量。
我可以通过正则表达式搜索(例如^.*static (?!(const)).+$
)轻松地跟踪类和函数中的(非常量)静态变量,但是我很难跟踪名称空间中声明的非常量静态变量。 (或仅在.cpp文件中),例如
//Foo.cpp
#include
int sharedValue = -1;
int Foo::notThreadSafeAndNotConst(int bar) const
{
if (bar bar = sharedValue;
else
sharedValue = bar;
return bar;
}
所以我想知道,是否有一种简单的方法可以通过例如来跟踪那些(隐式静态的)变量。正则表达式搜索,还是我需要等待例如一个静态分析工具来找到它们?