为什么我会收到此错误?

时间:2013-05-20 14:00:01

标签: c++ compiler-errors

C:\Users\Victor\Desktop\0.3.r5958\luascript.cpp|9037|error: 'buttonEnter' may be used uninitialized in this function|
C:\Users\Victor\Desktop\0.3.r5958\luascript.cpp|9037|error: 'buttonEscape' may be used uninitialized in this function|
C:\Users\Victor\Desktop\0.3.r5958\luascript.cpp|9039|error: 'popup' may be used uninitialized in this function|
||=== Build finished: 3 errors, 0 warnings ===|strong text

这是我得到错误的行:

    std::string str, title, message;
    uint8_t buttonEnter, buttonEscape;
    std::vector<ModalChoice> buttons, choices;
    bool popup;

我正在使用c ++并尝试在代码块中编译

2 个答案:

答案 0 :(得分:1)

您已声明了对象和变量,但尚未初始化它们。 bool popup只是声明您将使用名为popup的布尔值,但它不会初始化它。初始化意味着设置初始值,在这种情况下,它将是truefalse

通常一起完成声明和初始化,例如bool popup = true;。如果未初始化值,则行为未定义。有时某些编译器会实现默认值,但这依赖于 。如果不这样做,你应该假设你会得到垃圾值。

答案 1 :(得分:0)

不确定你使用的语言。但我认为它是因为你声明了它们,但没有定义它们,即给它们默认值。