【发布时间】:2013-10-18 16:27:10
【问题描述】:
我需要像 C++ 中的 UnSupportedOperationException 这样的异常,但找不到。我希望它会在 STL 中,但似乎不存在。我应该通过从 STL 异常类派生来自己创建一个吗?
为什么需要它?:我正在实现复合设计模式,它需要在基类中抛出 unsupportoperationexception。 Jave 有,但 c++ 没有。
【问题讨论】:
-
这里:
throw UnSupportedOperationException;。希望你catch它。 -
如果您没有幽默感,请参阅 Federico 的回答。丹尼尔也是。无论哪种方式,我们都不知道您到底需要什么,这可能就像写
class UnSupportedOperationException {};或实际找出您真正的问题一样微不足道。 -
我猜 -1 是为了“愤怒感” :) 我确实说过我为什么需要它,请阅读 OP。
-
为什么需要这个名字?标准 C++ 库有一组可以使用的预定义异常,按类别命名。要么直接使用它们,要么如果你认为它们有用,从更有意义的类继承你自己的异常类;对于您的情况,我会选择
std::logic_error。