Я знаю это.
Вызов функции C из С++:
Если мое приложение было на С++, и мне пришлось вызывать функции из библиотеки, написанной на C. Тогда я бы использовал
//main.cpp
extern "C" void C_library_function(int x, int y);//prototype
C_library_function(2,4);// directly using it.
Это не повлияет на имя C_library_function
, и компоновщик найдет то же имя в своих файлах ввода *.lib и проблема будет решена.
Вызов функции С++ из C???
Но здесь я расширяю большое приложение, написанное на C, и мне нужно использовать библиотеку, написанную на С++. Вызывается проблема с изменением имени С++. Линкер жалуется на неразрешенные символы. Ну, я не могу использовать компилятор С++ над моим проектом C, потому что это ломает много других вещей. Каков выход?
Кстати, я использую MSVC