异常类应该是可能抛出它们的类的一部分还是应该存在于更高级别?
例如 :
class Test
{
public:
class FooException: public ExceptionBase { };
void functionThrowingFooException();
};
Run Code Online (Sandbox Code Playgroud)
要么
class FooException: public ExceptionBase { };
class Test
{
public:
void functionThrowingFooException();
};
Run Code Online (Sandbox Code Playgroud)
(functionThrowingFooException()是唯一能抛出的功能FooException)
异常确实模拟了错误条件。这些是针对每个班级的吗?如果您需要从自由函数引发异常怎么办?
如果您选择为各种问题状态提供不同的异常类型 - 分析/列出这些错误状态,在它们之后命名异常,将任何特定于状态的数据放入这些异常类型中,从 的子类派生std::exception,然后在单独的标头中声明。
| 归档时间: |
|
| 查看次数: |
4048 次 |
| 最近记录: |