所以我应该链接这3个文件,但是当我运行use.cpp时它告诉我print_foo和print有问题所以我的链接或声明一定有问题;(仅供参考我使用Xcode来编译)
这是头文件
// my.h (HEADER FILE)
extern int foo;
void print_foo();
void print(int);
这是my.cpp
// my.cpp
#include "my.h"
#include "std_lib_facilities_5.h"
void print_foo() {
cout << foo;
}
void print(int i) {
cout << i;
}
int main() {
return 0;
}
这是use.cpp
// use.cpp
#include "my.h" /* Declaration made available here */
int foo;
int main() {
foo = 7;
print_foo();
print(99);
return 0;
}
答案 0 :(得分:0)
你没有提到你是如何编译它们的,就像你可以在unix系统上做的那样
$ gcc my.cpp use.cpp -o my
编译
答案 1 :(得分:0)
您必须删除
中的主要内容my.cpp
你不能有两个主要的。