Pregunta

I converted my C++ dll to C dll:

#ifdef __cplusplus
    extern "C" {
#endif

MY_EXPORT int  my_func();
MY_EXPORT void my_func(int n);

#ifdef __cplusplus
    }
#endif

Everything worked fine without extern C declaration. With this declaration I got

error C2733: second C linkage of overloaded function 'my_func' not allowed

Why is it not allowed to export overloaded functions from C-style dll ?

¿Fue útil?

Solución

C does not allow to overload functions. That is C does not support overloading. It is a feature of C++.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top