如何在解析文件时处理所有可能的异常?
我的代码有一个抽象基类和两个派生类(XML和config),这些类基于我编写的用于解析的代码的文件类型。
答案 0 :(得分:2)
我只有一个例外:
#include <stdexcept>
namespace MyNameSpace
{
class ParserException: public std::runtime_error
{
public:
ParserException(std::string const& msg)
: runtime_error(msg)
{}
};
};
如果出现问题,请使用适当的错误消息抛出ParserException。如果存在一种特殊情况,用户实际上可以从中恢复,那么就为这种情况创建一个特定的异常(从ParserException派生)。
用法:
if (bad)
{ throw ParserException("Something Bad Happened");
}
答案 1 :(得分:0)
必须有很多例外,其中许多可能不太可能发生,但显而易见的可能是: -
这是一个开始......!