我正在使用c ++遗留驱动程序,我在不同的函数中构建了一个包含许多mongoDB操作的类。
我不想在每个函数中定义mongo::DBClientReplicaSet
但是如果我在全局级别定义它,我有另一个问题,因为我需要在构造任何驱动程序对象之前调用mongo::client::initialize
,或BSON就此而言。这意味着如果我在类构造函数中调用mongo::client::initialize
,我就无法在此之前定义mongo::DBClientReplicaSet
。所以它不能在全球范围内声明。我尝试了“extern mongo::DBClientReplicaSet xxxx
”,然后在类构造函数中定义了它,但得到了链接错误:
错误LNK2001:未解析的外部符号“类 mongo :: DBClientReplicaSet xxxx“
因为我们不能在没有参数的情况下使用mongo::DBClientReplicaSet
。
有人知道这方面的解决方案吗?