我想在两个cpp文件(A.cpp和B.cpp)之间共享(全球化)一些向量变量(V1和V2).我已经通过以下命令在Ah中定义了V1和V2.
extern vector<uint64_t> V1;
extern vector<uint64_t> V2;
Run Code Online (Sandbox Code Playgroud)
我还在A.cpp和B.CPP文件中添加了#include"Ah".任何人都可以让我知道我还能做些什么才能在这两个CPP文件中访问V1和V2的元素?
提前致谢
Nem*_*ric 10
首先,您需要选择应该定义矢量的位置.让我们说你选择A.cpp.
在A.cpp(仅在一个文件中 - 在多个文件中定义相同的对象将产生多个定义的符号错误)将向量定义为全局变量:
vector<uint64_t> V1;
vector<uint64_t> V2;
Run Code Online (Sandbox Code Playgroud)
在B.cpp(并从中您要访问的所有其他文件V1和V2)宣布向量作为extern.这将告诉链接器在别处搜索实际对象:
extern vector<uint64_t> V1;
extern vector<uint64_t> V2;
Run Code Online (Sandbox Code Playgroud)
现在,在连接步骤V1和V2从B.cpp将被连接到V1和V2从A.cpp(或徘徊无论这些对象被定义).
| 归档时间: |
|
| 查看次数: |
1149 次 |
| 最近记录: |