POCO C++库学习和分析 -- 异常、错误处理、调试
POCO C++库学习和分析 -- 异常、错误处理、调试
1. 异常处理
C++同C语言相比,提供了异常机制。通过使用try,catch关键字可以捕获异常,这种机制使得程序员在程序异常发生时,可以通过判断异常类型,来决定程序是否继续执行,并在程序结束之前优雅的释放各类资源。当然对于C++的异常机制也存在着很多的争议。在这里,并不对此展开讨论,只介绍一下Poco中的异常类。
Poco中的异常类:
1. 所有的异常类都是Poco::Exception的子类。
2. Poco::Exception继承自std::exception类。
3. Foundation库中涉及的异常类,包括了下面一些:
a) Poco::LogicException类负责处理程序错误,包括了:
AssertionViolationException
NullPointerException
NullValueException
BugcheckException
InvalidArgumentException
NotImplementedException
RangeException
IllegalStateException
InvalidAccessException
SignalException
UnhandledException
b) Poco::ApplicationException类负责处理应用程序相关的错误,即使用Poco库的用户自定义异常。
c) Poco::RuntimeException类负责处理程序运行时的错误,包括了:
RuntimeException
NotFoundException
ExistsException
TimeoutException
SystemException
RegularExpressionException
LibraryLoadException
LibraryAlreadyLoadedException
NoThreadAvailableException
PropertyNotSupportedException
PoolOverflowException
NoPermissionException
OutOfMemoryException
DataException
DataFormatException
SyntaxException
CircularReferenceException
PathSyntaxException
IOException
ProtocolException
FileException
FileExistsException
FileNotFoundException
PathNotFoundException
FileReadOnlyException
&nb
补充:软件开发 , C++ ,