将Exception创建为内部类是个好主意吗?C++
Is it a good idea to create Exception as inner class? C++
那么创建Exception作为内部类是个好主意吗?我有一种不对劲的感觉,但我不知道到底是什么。。
例如:
class A {
...something...
public:
class AException : std::exception {
...something...
}
};
这取决于情况。
嵌套类就是嵌套类。这不是java,所以内部类没有什么神奇之处。
您可以使用"外部类"作为名称空间。如果这提高了可读性,那么有一些东西可以支持它
一个缺点是,现在异常类是类的公共接口的一部分,
- 阻止您在单独的标头中声明异常类
- 可能会阻碍对包含类的维护(ODR规则)
在其他条件相同的情况下,我可能会建议不要嵌套异常类型,因为良好的命名好处不应该超过潜在的缺点。
相关文章:
- 什么时候在C++中返回常量引用是个好主意
- 使用嵌套函数数组是个好主意吗?
- 将std::regex设置为静态的好主意吗
- 使用共享库进行变体处理是个好主意吗?
- 使用列表<Byte>不是好主意吗?
- 用C++编写多级内联函数是个好主意吗?
- 重载参数 C++ 是个好主意吗?
- 扩展 std::vector 是个好主意吗?
- 将 int32_t 键入为 int 是个好主意吗?
- 常量参考延长对象的寿命,然后是const_cast,这是一个好主意吗?
- 使用 QT 开发服务器应用程序是个好主意吗?(QT5)
- 用 constexpr 中的工会取代reinterpret_cast - 好主意?
- 将C 11设置功能更改为带有转发的现代模板功能是一个好主意
- 在哪里使用"std::valarray"是个好主意?
- std :: tr1 :: shared_ptr throw bad_alloc,也是一个好主意
- 在构造函数中循环C++是一个好主意吗?
- 重载指向集合的指针的开始/结束是否是个好主意
- 是一个哨兵 QWidget 一个好主意(以防止在创建和填充布局时出现内存泄漏)
- 搞砸常量是个好主意吗?
- 设置帧速率?这是个好主意吗