Question

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 ?

Était-ce utile?

La solution

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

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top