Как правило, нужно определить и инициализировать статические константы в файле заголовка глобальной функции или в его файле cpp (обратите внимание, что у меня есть только одна глобальная функция, определенная для каждого файла).Статические константы в глобальных функциях в C++
ответ
Если значения констант известны во время компиляции, я рекомендую поместить их в файл заголовка и используя:
// No need to use static
const <type> var = <constant value>;
Однако, если вы хотите, чтобы ограничить видимость постоянной только к источнику файл, вы можете поместить его определение только в соответствующий исходный файл.
Если значения констант неизвестны во время компиляции, я рекомендую использовать функцию, а не подвергать их переменной.
extern <type> getVar();
Это статические константы. Я думал, что все статические константы должны быть известны во время компиляции? – nm17
«Нет необходимости использовать статический»: все зависит от видимости, которую вы хотите передать своей переменной (вне единицы компиляции или нет). – Christophe
@Christophe. Обозначенная переменная 'const 'в области пространства имен по умолчанию имеет внутреннюю привязку, поэтому' static' не имеет значения. –
- 1. Статические константы в C#
- 2. «this» в глобальных функциях
- 3. Изменение глобальных переменных в функциях
- 4. Статические константы
- 5. Массивы как адресные константы в функциях
- 6. Использование копий глобальных переменных в функциях
- 7. Декларирование статические константные переменные в функциях
- 8. Статические библиотеки и константы
- 9. Статические константы: как?
- 10. Как обрабатываются статические константы?
- 11. Константы класса против глобальных констант
- 12. Как иметь статические константы в классе cpp?
- 13. Глобальных статические константные строковые переменные в Objective-C
- 14. Статические элементы C++ в статических функциях и многопоточность
- 15. Локальные статические константы в Вале: возможно?
- 16. глобальных клавиатурных крючков в c
- 17. Константы Java и статические модификаторы
- 18. Статические переменные в PHP - нечто иное, чем литералы и константы!
- 19. Константы в C/C++
- 20. Использование глобальных констант в Swift
- 21. Статические функции в C++
- 22. C++ Глобальные константы в проекте
- 23. Обработка глобальных пространств имен в функциях разбора lxml
- 24. Использование глобальных переменных во внешних функциях в python, подобных Matlab
- 25. Можно ли избежать статических или глобальных переменных в функциях диалога
- 26. Обозначение константы константы C++
- 27. Распределение глобальных массивов C++
- 28. Сконфигурируйте константы константы в UWP/C#
- 29. Статические константы целочисленного типа C++: вне определения класса
- 30. плавающие константы в C
Вы говорите о статике, локальной для (глобальной) функции? –
да, я. Они не используются нигде, кроме глобальной функции. – nm17
Если они локальны для функции, они могут быть инициализированы только в определении функции, поэтому ваш вопрос не имеет смысла. Может быть, вы можете показать пример? –