Partager via


Avertissement du compilateur (niveau 4) C4673

lever 'identifier' les types suivants ne sera pas pris en compte sur le site catch

Un objet throw ne peut pas être géré dans le catch bloc. Chaque type qui ne peut pas être géré est répertorié dans la sortie d’erreur immédiatement après la ligne contenant cet avertissement. Chaque type non géré a son propre avertissement. Lisez l’avertissement pour chaque type spécifique pour plus d’informations.

L’exemple suivant génère l’erreur C4673 :

// C4673.cpp
// compile with: /EHsc /W4
class Base {
private:
   char * m_chr;
public:
   Base() {
      m_chr = 0;
   }

   ~Base() {
      if(m_chr)
         delete m_chr;
   }
};

class Derv : private Base {
public:
   Derv() {}
   ~Derv() {}
};

int main() {
   try {
      Derv D1;
      // delete previous line, uncomment the next line to resolve
      // Base D1;
      throw D1;   // C4673
   }

   catch(...) {}
}