Я хочу включить функцию сборки в c++. Я использовал google и нашел extern int test(int,int)
это отлично работает на C, но не в c++. Что я должен делать в c++? Мой код:
#include <iostream>
extern int test(int,int);
int main () {
std::cout<<test(2,2); //Here I get "../main.cpp:6: undefined reference to 'test'"
return 0;
}
Я использую eclipse с MinGW.
Вы можете включить функции сборки в C++ с внешним extern "C"
. Рабочий пример:
#include <iostream>
extern "C" int test(int,int);
int main () {
std::cout<<test(2,2);
return 0;
}
MinGW добавляет подчеркивание функции, поэтому вы должны называть ее _test
в сборке.
extern "C" int test(int,int);
extern
объявлениеextern "C" {}