c++ - 为什么 cppcheck 工具找不到未初始化的变量?

标签 c++ initialization warnings cppcheck

我运行 commad (Ubuntu 12.04)

cppcheck test.cpp

我期待来自 cppcheck 工具的未初始化变量警告。 为什么 cppcheck 工具在命令行上打印不出来?

示例 cpp 代码:

#include <iostream>

class Foo
{
private:
    int m_nValue;

public:
    Foo();
    int GetValue() { return m_nValue; }
};

Foo::Foo()
{
    // Oops, we forget to initialize m_nValue
}

int main()
{
    Foo cFoo;
    if (cFoo.GetValue() > 0)
    {//...
    }
    else
    {//...
    }
}

最佳答案

有关信息.. 如果您使用 --enable=warning,cppcheck 会写入这样的消息:

[test.cpp:13]:(警告)成员变量“Foo::m_nValue”未在构造函数中初始化。

关于c++ - 为什么 cppcheck 工具找不到未初始化的变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30006765/

相关文章:

C++ 单头文件结构

c++ - 为什么在用花括号初始化结构时会出错?

python - 为什么我们不需要将 self 包含在 super() 中?

java - checkstyle 警告 "Declaring variables, return values or parameters of type ' ArrayList' is not allowed."是什么意思?

c++ - 如何获取硬件覆盖的小部件的 QPixmap?

C++ - 函数选择显示读取后标准输入中有数据

java - 一行初始化 ArrayList

python - 如何将 PostgreSQL 警告提升为 psycopg2 中的异常?

Xcode 7 - 如何删除 ld : warning: -read_only_relocs cannot be used with x86_64

c++ - 用空格字符替换子字符串