Windows 7 64 SP1 MongoDB 2.2.0 C++ 驱动程序 MSVS 2010
根据:
Double()
UserException
(和类似的函数)应该“如果元素不是所需的类型,则抛出 a ”。
我的代码:
BSONObj a_document = BSON("a_string"<<"A string");
try
{
a_document["a_string"].Double();
}
catch(mongo::UserException ue)
{
cout << ue.toString() << endl;
}
但它不会被抓住。Intead 断言:
Sun Dec 09 16:04:28 Assertion: 13111:wrong type for field (a_string) 2 != 1
Sun Dec 09 16:04:28 dev: lastError==0 won't report:wrong type for field (a_string) 2 != 1
我究竟做错了什么?我想自己捕捉和处理数据类型异常。
谢谢!