要求写一个用vs2019写一个计费系统 ,我如果把数据结构都定义在一个model.h头文件中,但是很多源文件都需要model.h中的数据,这个时候多文件一起编译就会出现重复定义而报错,model.h只能在一个.c文件中使用 那么其他.c文件就用不了model.h的数据了,到底怎么办才能让多个.c文件使用同一个.h文件中定义的数据呢(如果不写多个.h头文件)
不知道你这个问题是否已经解决, 如果还没有解决的话:该回答内容部分引用GPT,GPT_Pro更好的解决问题
在 Visual Studio 2019 中,多文件使用同一个 h文件中定义的数据时,可以使用 #include 预处理指令来解决。举个例子,假如我们有一个 model.h 头文件,里面定义了一个结构体struct A。我们希望在 main.cpp 中和 func.cpp 中都使用这个结构体,可以通过下面的方法来实现:
在 main.cpp 和 func.cpp 中都加入 #include "model.h" 预处理指令,这样就可以在 main.cpp 和 func.cpp 中使用 model.h 中定义的结构体struct A 了。
//main.cpp
#include "model.h"
int main() {
// 在这里使用model.h中定义的struct A
struct A a;
return 0;
}
//func.cpp
#include "model.h"
void func() {
// 在这里使用model.h中定义的struct A
struct A a;
// 其他代码...
}
如果回答有帮助,望采纳。