Advertencia del compilador (nivel 1, error) C4394
'función': el símbolo por AppDomain no se debe marcar con __declspec(dllexport)
Una función marcada con el modificador appdomain __declspec
se compila en MSIL (no de forma nativa) y las funciones administradas no admiten tablas de exportación (modificador export __declspec
).
Puede declarar una función administrada para tener accesibilidad pública. Para más información, consulte Visibilidad de tipos y Visibilidad de miembros.
La advertencia C4394 siempre se emite como error. Puede desactivar esta advertencia o cambiar su nivel con #pragma warning
o /wd. Para más información, consulte la advertencia o /w, /W0, /W1, /W2, /W3, /W4, /w1, /w2, /w3, /w4, /Wall, /wd, /we, /wo, /Wv, /WX (nivel de advertencia).
Ejemplo
El ejemplo siguiente genera la advertencia C4394.
// C4394.cpp
// compile with: /clr /c
__declspec(dllexport) __declspec(appdomain) int g1 = 0; // C4394
__declspec(dllexport) int g2 = 0; // OK