为什么定义的全局变量无法使用

(注:以下结论均是在VS2022中得到)

对于初学者在定义全局变量时有时会出现全局变量无法使用的情况比如:

我们如果将代码写成这样

#include
using namespace std;

int data = 4;
int main() {
    cout << data;
    return 0;
}

系统报错为

为什么定义的全局变量无法使用_第1张图片

这是你就会发现你明明和别人写的一样为什么别人能运行可到了你这里就会报错(除了变量名),没错,就是变量名导致的,这是如果你把变量名换一下就会发现又好了。

为什么定义的全局变量无法使用_第2张图片

 那么现在来说一说为什么之前会报错呢?

因为你的变量名和c++中自带的类名起了冲突,导致c++不知道你要输出哪一个。

所以这时你只要加一个::你就会发现也可以运行了。

为什么定义的全局变量无法使用_第3张图片

(如果认为我说的有问题可以在评论区指出)

你可能感兴趣的:(c++,开发语言)