c++ - 使用代码 :Blocks on Linux 的 C++ 函数中的 "Not Declared in scope"

标签 c++ function addition

这是我的代码:

    #include <iostream>
    #include "rlutil.h"
    #include <cmath>
    #include <string>

    using namespace std;


    int getNumber()
    {
        int firstNumber;
        int secondNumber;
        cout << "Please Enter Your First Number." << endl;
        cin >> firstNumber;
        cout << "Please Enter Your Second Number." << endl;
        cin >> secondNumber;
        return 0;
    }

    int writeNumber()
    {
        getNumber();
        rlutil::setColor(3);
        cout << firstNumber + secondNumber << endl;
        return 0;
    }

当我编译它来检查它给我的错误时:

/home/bresser/Documents/LearnC++/main.cpp||在函数“int writeNumber()”中:| /home/bresser/Documents/LearnC++/main.cpp|24|错误:“firstNumber”未在此范围内声明| /home/bresser/Documents/LearnC++/main.cpp|24|错误:“secondNumber”未在此范围内声明| ||=== 构建完成:2 个错误,0 个警告 ===|

我有点明白它在说什么,只是不明白如何解决它。

最佳答案

最简单的修复是采取

int firstNumber;
int secondNumber;

在 getNumber 函数之外并赋予它们全局范围。也就是说,将它们放在代码中 using namespace std; 行的下方。

关于c++ - 使用代码 :Blocks on Linux 的 C++ 函数中的 "Not Declared in scope",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16172217/

相关文章:

c++ - new运算符和构造函数参数的执行顺序

c++ - 如何在最小化窗口后最大化它

c++ - 为什么它试图发送一个字符数组而不是一个字符串?

java - 无法使用逗号和字符串标记器对数字求和

integer - 将整数与指针相加

C++ typeid 是否返回字符串类型?

c++ - Minifilter 驱动程序不阻止文件编辑

javascript - JS - 无法获取函数实例的构造函数名称

c - 修改函数指针的签名

python - 如何在 Python 中保持列表静态?