Что именно делает вставка extern "C"в код C ++? Например: extern "C" { void foo(); }
Что именно делает вставка extern "C"в код C ++? Например: extern "C" { void foo(); }
Я работаю над проектом, в котором много унаследованного кода на Си . Мы начали писать на C ++ с намерением в конечном итоге также преобразовать устаревший код. Я немного озадачен тем, как взаимодействуют C и C ++. Я понимаю , что обертывание C кода extern "C"на C ++ компилятор не будет искажать C...
Почему мы должны использовать: extern "C" { #include <foo.h> } В частности: Когда мы должны использовать это? Что происходит на уровне компилятора / компоновщика, что требует от нас его использования? Как с точки зрения компиляции / компоновки это решает проблемы, которые требуют от нас его...
Недавно у меня было интервью, и был задан один вопрос: в чем смысл использования extern "C"кода на C ++? Я ответил, что это использование функций C в коде C ++, так как C не использует искажение имен. Меня спросили, почему C не использует искажение имен и, честно говоря, я не мог ответить. Я...
У меня есть функция C, которую я хотел бы вызвать из C ++. Я не мог использовать " extern "C" void foo()" подход, потому что функция C не могла быть скомпилирована с использованием g ++. Но он отлично компилируется с использованием gcc. Есть идеи, как вызвать функцию из C ++?...
Я знаю это. Вызов функции C из C ++: Если бы мое приложение было на C ++ и мне пришлось бы вызывать функции из библиотеки, написанной на C. Тогда я бы использовал //main.cpp extern "C" void C_library_function(int x, int y);//prototype C_library_function(2,4);// directly using it. Это не повлияет...