C++ MongoDB C++;驱动程序未抛出连接错误
这是我的密码-C++ MongoDB C++;驱动程序未抛出连接错误,c++,exception,mongodb,exception-handling,try-catch,C++,Exception,Mongodb,Exception Handling,Try Catch,这是我的密码- DBClientBase *conn = NULL; string err_msg; ConnectionString cs = ConnectionString::parse(connString, err_msg); if (!cs.isValid()) { throw "bad: " + err_msg; } try { conn = cs.connect(err_msg); } catch (DBException &e) { cout <
DBClientBase *conn = NULL;
string err_msg;
ConnectionString cs = ConnectionString::parse(connString, err_msg);
if (!cs.isValid()) {
throw "bad: " + err_msg;
}
try {
conn = cs.connect(err_msg);
}
catch (DBException &e) {
cout << "caught " << err_msg << endl;
return 1;
}
if (!conn) {
cout << "Unable to connect to DB" << endl;
return 1;
}
块不工作?From,ConnectionString::connect
似乎只有在字符串本身无效时才会引发异常(从第一条条件语句中您已经知道它不是)
它只返回一个空指针,并在所有其他情况下设置errMsg
为你辩护,我在任何地方都找不到这方面的文件;这是我能找到的全部
string err_msg;
ConnectionString cs = ConnectionString::parse(connString, err_msg);
if (!cs.isValid()) {
throw "bad: " + err_msg;
}
DBClientBase* conn = cs.connect(err_msg);
if (!conn) {
cout << "Unable to connect to DB: " << err_msg << endl;
return 1;
}
字符串错误消息;
ConnectionString cs=ConnectionString::parse(connString,err_msg);
如果(!cs.isValid()){
抛出“bad:+err_msg;
}
DBClientBase*conn=cs.connect(err\u msg);
如果(!conn){
库特
string err_msg;
ConnectionString cs = ConnectionString::parse(connString, err_msg);
if (!cs.isValid()) {
throw "bad: " + err_msg;
}
DBClientBase* conn = cs.connect(err_msg);
if (!conn) {
cout << "Unable to connect to DB: " << err_msg << endl;
return 1;
}