如何猜测 libpqxx C++库函数引发的异常类型
How to guess the exception type thrown by libpqxx C++ library functions?
我正在使用libpqxx,但我坚持以下问题。
让我们说pqxx:connection_base类抛出异常的一些函数,根据connection_base.hxx
文件:
void disconnect() throw ();
我的问题是:我怎么能猜出抛出什么样的异常?我应该期待一个pqxx::exception
,一个pqxx::sql_error
吗?包含文件对我来说似乎毫无用处,而文档,Doxygen生成的文件显然没有帮助。
void disconnect() throw ();
^^^^^^^^^^
具有空抛出的异常规范告诉您此函数不会引发任何异常。
您不应该猜测函数显示的异常,要么函数不应包含任何异常规范,这意味着它可以抛出任何异常(可以通过捕获所有处理程序捕获catch(...)
注意:这是一种不好的做法),或者它应该记录它可以抛出的异常。
在这种情况下,至少文档说它不应该抛出任何异常,如果它确实将其报告给函数的提供者。
相关文章:
- 您应该在什么时候创建自己的异常类型
- 为什么标准不允许通过引用捕获不完整的异常类型?
- 如何修复"ctypes"。参数错误:参数 2:<键入"异常.类型错误">:RaspberryPi 中的错误类型"错误
- 提出异常并处理C 的某些异常类型的正确方法是什么?
- 无法在谷歌测试中检查异常类型
- QT创建者和MSVC-忽略调试时特定的异常类型
- 如何捕获除使用 GDB 的异常类型之外的所有异常类型
- 异常是否应具有标志/消息,或者每个错误应具有异常类型
- 如何在不同的上下文(例如线程)中保留原始异常类型信息
- std::rethrow_exception和抛出的异常类型
- 捕获派生异常类型在 Clang/MacOS X 上失败
- C++:检查是否在没有外部库的情况下抛出了某个异常类型
- 如何猜测 libpqxx C++库函数引发的异常类型
- 获取异常类型
- catch语句如何在没有反射的情况下识别异常类型
- 我们应该使用标准库中的异常类型吗?
- 为什么我的程序从异常中崩溃,即使我捕获了异常类型
- 如何在Mac上从c++程序中自动获取异常类型和消息
- close()抛出什么异常类型
- c++中无法捕获异常:无法识别异常类型