статическое ключевое слово сохраняет область глобальной переменной, ограниченную этой единицей перевода.
Если я использую static int x
в файле .h и включаю этот файл .h в каждый другой файл, не все ли они принадлежат одной и той же переводческой единице?
Тогда, не будет ли х видимым повсюду?
Итак, какова роль статики сейчас?
Кроме того, существует ли использование static const int x
, где x - глобальная переменная?
По умолчанию не все константные глобальные переменные const?
И является ли область ограничений const ограничена TU, даже если она ограничена в цикле for в файле?