当我们想要一个导出的变量(在C和C ++中)时,我们需要:
- 在hpp头文件中将变量声明为extern(即extern int x;)
- 在cpp文件中初始化变量(即:int x = 0)。
但是,我发现容器存在问题,而且我收到了像#34这样的消息;变量被多次声明"等等。
例如:
hpp文件:
typedef std::vector<std::pair<std::string, std::string>> VectorOfPairs_t;
export VectorOfPairs_t vectorOfPairs;
cpp文件:
std::pair<std::string, std::string> myPair;
myPair = std::make_pair("hello", "world");
vectorOfPairs.push_back( myPair ); // All this is just a hack
// to initialize the container...
main.cpp(或其他cpp):
use of vectorOfPairs accordingly to my requirements
但是,正如我所提到的,这不是编译。
你能告诉我我做错了什么吗?