我试图理解 C++ 中的关键字 extern 并编写了一段简短的代码来概述其含义。不幸的是我做错了什么
bla.h
int bla = 4;
测试.cpp
#include <iostream>
using namespace std;
int main() {
extern int bla;
cout << bla << endl;
}
g++ -o test bla.h test.cpp
/tmp/ccED67jz.o: In function `main':
test.cpp:(.text+0xa): undefined reference to `bla'
collect2: ld returned 1 exit status
最佳答案
extern
,您描述的用法仅适用于全局变量:
bla.cpp
int bla = 4;
测试.cpp
#include <iostream>
extern int bla; // use the global from bla.cpp as a global in this file
int main(int argc, char *argv[]) {
std::cout << bla << "\n";
return 0;
}
关于c++ - g++ 链接器问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6438698/