编译器错误 C2694

“override”:重写虚函数的限制性异常规范比基类虚成员函数“base”少

重写了虚拟函数,但在 /Za 下,重写函数具有限制较少的异常规范

下面的示例生成 C2694:

// C2694.cpp
// compile with: /Za /c
class MyBase {
public:
   virtual void f(void) throw(int) {
   }
};

class Derived : public MyBase {
public:
   void f(void) throw(...) {}   // C2694
   void f2(void) throw(int) {}   // OK
};