gpt4 book ai didi

c++ - 如何在不同的文件中声明变量?

转载 作者:行者123 更新时间:2023-11-28 05:47:19 26 4
gpt4 key购买 nike

我是 C++ 的新手,只是想将函数分离到文件中。这是我的一项作业中的示例。当我编译它时,消息显示:

'b' is not declared

当我将 #include "q1b.cpp" 添加到 q1a.cpp 时,它失败了。只改q1a.cpp怎么运行?很高兴知道这个概念。

//q1a.cpp
#include <iostream>
#include "q1b.h"
using namespace std;
int main() {
calC();
cout << b << endl;
return 0;
}

//q1b.cpp
#include "q1a.h"
#include "q1b.h"
int b=1;
void calB(int i) {
b = calA(i) + 1;
}
void cal() {
calB(calA(b));
}

//q1a.h
int calA(int i) {
return i*10;
}

//q1b.h
void calC();

最佳答案

使用 extern 说明符声明变量。

//q1a.cpp
#include <iostream>
#include "q1b.h"
using namespace std;
extern int b; // add this line
int main() {
calC();
cout << b << endl;
return 0;
}

如果“仅通过更改 q1a.cpp”约束不存在,则应将变量声明添加到 q1b.h,因为该变量在 q1b.cpp< 中定义.

关于c++ - 如何在不同的文件中声明变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35967938/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com