Вопросы с тегом «extern»

17
Как использовать extern для обмена переменными между исходными файлами?
Я знаю, что глобальные переменные в C иногда имеют externключевое слово. Что такое externпеременная? Как выглядит декларация? Какова его сфера применения? Это связано с совместным использованием переменных в исходных файлах, но как это работает точно? Где я могу использовать extern?

1
«FOUNDATION_EXPORT» против «extern»
Я хотел бы спросить , что причина использования FOUNDATION_EXPORTвместо externв Objective C проектов. Я проверил этот вопрос, и использование FOUNDATION_EXPORTпринесло колоссальные 340 баллов (1-е место), тогда как использование externтолько 74 баллов (2-е место). Кто-нибудь может объяснить почему? Есть ли практическая причина использовать FOUNDATION_EXPORTвместо extern? Благодарность!

5
с использованием шаблона extern (C ++ 11)
Рисунок 1: шаблоны функций TemplHeader.h template<typename T> void f(); TemplCpp.cpp template<typename T> void f(){ //... } //explicit instantation template void f<T>(); main.cpp #include "TemplHeader.h" extern template void f<T>(); //is this correct? int main() { f<char>(); return 0; } Это правильный способ использования extern template, или я использую это ключевое слово …
116 c++  templates  c++11  extern 

6
Что делает extern inline?
Я понимаю, что inlineсамо по себе это предложение для компилятора, и по своему усмотрению он может или не может встроить функцию, а также будет создавать объектный код с возможностью связывания. Я думаю, что это static inlineделает то же самое (может или не может быть встроенным), но не будет создавать связываемый …

1
Почему одноименные локальные переменные extern в разных блоках получают разные связи между компиляторами в c ++?
Пока я только проверял, какие связи предоставляются внешним локальным переменным, я обнаружил, что некоторые компиляторы ведут себя по- разному. например, если я тестировал приведенный ниже код, как вы видите в комментариях, переменные vars имеют разные связи // foo.cpp int var = 10; // external linkage // main.cpp #include <iostream> static …
12 c++  g++  clang++  extern  linkage 
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.