Что правильно говорить о глобальной переменной:глобальный масштаб против области файла
Если он объявлен без static
ключевого слова:
- Он имеет
file scope
иexternal linkage
ИЛИ - Он имеет
program scope
и виден ко всем файлам в программе
Если объявлено static
ключевое слово:
- Он имеет
global scope
internal linkage
и ИЛИ - Он
file scope
иinternal linkage
И как глобальная область видимости пространства имен, связанные с этим?
Эти понятия действительно путают, я думаю, что я понимаю, как это работает, но в разных местах они называют это по-разному, поэтому я не знаю, что правильно.
Для первого вопроса, первый ответ: я имею в виду, что он имеет область видимости файла 'but', которая может быть« отнесена »от другой единицы перевода, объявив ее« extern ». Поэтому возникает путаница при использовании понятий файловой и глобальной сферы. Правильно ли указывать область файла и внешнюю связь или глобальную область действия, и если мы хотим ссылаться на нее из другой единицы перевода, мы объявляем ее, чтобы мы могли ее использовать? – LearningMath
Можно сказать, что переменная имеет глобальную область видимости. Но в то же время он может быть объявлен в любом пространстве имен, –