Compartilhar via


Erro do compilador C2694

'override': substituir a função virtual tem uma especificação de exceção menos restritiva do que a função de membro virtual da classe base 'base'

Uma função virtual foi substituída, mas em /Za, a função de substituição tinha uma especificação de exceção menos restritiva.

O seguinte exemplo gera o erro 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
};