Partager via


Erreur du compilateur C2694

'override' : la substitution d’une fonction virtuelle a une spécification d’exception moins restrictive que la fonction membre virtuelle de classe de base 'base'

Une fonction virtuelle a été remplacée, mais sous /Za, la fonction de substitution avait une spécification d’exception moins restrictive.

L’exemple suivant génère l’erreur 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
};