Как мне вызвать функцию C++ из C, не получив ошибки связывания? [дубликат]C++

Программы на C++. Форум разработчиков
Ответить
Гость
 Как мне вызвать функцию C++ из C, не получив ошибки связывания? [дубликат]

Сообщение Гость »


Я пытаюсь добавить функциональность библиотеки C++ в код, написанный на C. Я компилирую библиотеку C++ как DLL, но что бы я ни делал, получаю ошибку Link 2019:

ошибка LNK2019: неразрешенный внешний символ __imp__TestFunction, на который ссылается функция _Test В настоящее время рассматриваемые файлы выглядят следующим образом:

test.h

#ifdef _EXPORTING #define CLASS_DECLSPEC __declspec(dllexport) #еще #define CLASS_DECLSPEC __declspec(dllimport) #endif #ifdef __cplusplus внешний "С" { #endif CLASS_DECLSPEC int TestFunction (int test); #ifdef __cplusplus } // внешний "C" #endif test.cpp
#include "test.h" extern "C" __declspec(dllexport) int TestFunction(int test) { возврат 1 — тест; }
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»