Partager via


Avertissement du compilateur (niveau 1) C4190

« identifier1 » a la liaison C spécifiée, mais retourne l’UDT « identificateur2 » qui est incompatible avec C

Une fonction ou un pointeur vers une fonction a un type défini par l’utilisateur (qui est une classe, une structure, une énumération ou une union) comme type de retour et extern "C" liaison. Ceci est légal si :

  • Tous les appels à cette fonction se produisent à partir de C++.

  • La définition de la fonction est en C++.

Exemple

// C4190.cpp
// compile with: /W1 /LD
struct X
{
   int i;
   X ();
   virtual ~X ();
};

extern "C" X func ();   // C4190