C++ 如何使用C++;?

C++ 如何使用C++;?,c++,mongodb,instance,mongo-cxx-driver,C++,Mongodb,Instance,Mongo Cxx Driver,我在构造函数中生成一个mongocxx::instance类的对象 构造函数: mongocxx::instance instance{}; mongocxx::client client { mongocxx::uri{} }; database= client["test"]; mongocxx::instance::current(); database.drop(); 现在我需要在函数中获取这个实例。我试过这个: 功能: mongocxx::instance instance

我在构造函数中生成一个mongocxx::instance类的对象

构造函数:

mongocxx::instance instance{};
mongocxx::client client
{
    mongocxx::uri{}
};
database= client["test"];
mongocxx::instance::current();
database.drop();
现在我需要在函数中获取这个实例。我试过这个:

功能:

mongocxx::instance instance{};
mongocxx::client client
{
    mongocxx::uri{}
};
database= client["test"];
mongocxx::instance::current();
database.drop();
我的程序在
mongocxx::instance::current()行崩溃


有人能帮我吗?

一旦构造函数运行完成,堆栈上的
mongocxx::instance
对象就被销毁了。您需要保留一个
instance
的实例,该实例比其他类型的实例更有效


有关如何使用此类型的更多示例,请参见源代码中的。

如果没有匿名名称空间,此代码对我有效。我从不同类的对象在不同的函数中调用instance()方法。Singleton对象只创建一次。但是,当我像示例中那样使用匿名名称空间时,在编译代码时会出现链接错误。