我收到一个告诉我的错误
error: declaration of 'virtual FXHost::~FXHost()' throws different exceptions
error: than previous declaration 'virtual FXHost::~FXHost() throw ()'
我不确定如何开始解决此问题,我以前从未遇到过。
在我的.h中,我有:
public:
virtual ~FXHost() throw();
在我的.cpp文件中,我有:
FXHost::~FXHost()
{
gHost = NULL;
}
指针表示赞赏。
最佳答案
函数声明末尾的throw()
是一个异常规范。这意味着该函数永远不会引发异常。在派生类中不能覆盖(只能进一步限制)此错误。
由于您的实现本身不会引发异常,因此您所需要的只是在析构函数声明中添加throw()
。
See here why you should (not) use this (mis)feature of C++