#cpp
В чём разница между следующими объявлениями?
extern "C" int a;
extern "C" { int b; }
Ответы
Ответ 1
Тип языковой линковки в обоих случаях у переменных получается одинаковым - "C". Но разница заключается в том, что первый вариант является только объявлением, но не определением переменной a. Второй вариант является определением переменной b. Если добавить в данные объявления явный инициализатор, то тогда оба станут определениями и какая-либо разница между ними полностью пропадет extern "C" int a = 0; extern "C" { int b = 0; }
Комментариев нет:
Отправить комментарий