Compartir vía


Advertencia del compilador (nivel 1) C4190

"identifier1" tiene la vinculación de C especificada, pero devuelve UDT "identifier2", que no es compatible con C

Una función o puntero a función tiene un UDT (tipo definido por el usuario, que es una clase, estructura, enumeración o unión) como tipo de valor devuelto y vinculación extern "C". Esto es válido si:

  • Todas las llamadas a esta función se producen desde C++.

  • La definición de la función está en C++.

Ejemplo

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

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