Как собрать библиотеку, чтобы ее функционал вызывался из C и С++?
extern "C" __declspec(dllexport) function(...)
если на сях, то
__declspec(dllexport) function(...)
можно extern "C" убрать под #ifdef __cplusplus если не уверен
можно extern "C" убрать под #ifdef __cplusplus если не уверенКак-то так: libheader.h
#ifndef MY_LIBRARY_HEADER
#define MY_LIBRARY_HEADER
#ifdef MYLIB_EXPORT
#define MYLIBSPEC __declspec(dllexport)
#else
#define MYLIBSPEC __declspec(dllimport)
#endif
#ifdef __cplusplus
extern "C" {
#endif
MYLIBSPEC restype1 func1(...);
MYLIBSPEC restype2 func2(...);
......
#ifdef __cplusplus
} //extern "C"
#endif
#endif
Да, спасибо!
extern "C" __declspec(dllexport) function(...)wtf dllexport?
у меня вот такое ни один компилятор в системе не проглотил.
Microsoft Visual Studio 6
это фича cl из msvc.
Оставить комментарий
XRENANTES
См сабж. Необходимо оформить 1 ф-ию в библиотеку, чтобы она могла быть вызвана как из C, так и из C++. Microsoft Visual Studio 6