Михаил Матросов - Как объявить константу в С++?
ฝัง
- เผยแพร่เมื่อ 6 ก.ย. 2024
- Подробнее о конференции C++ Russia: jrg.su/W8skjE
- -
. . . С++ прекрасен тем, что простейшие вещи в нём могут быть чрезвычайно запутанны и сложны. Казалось бы, что может быть проще, чем объявить константу?
Достаточно лишь выбрать подходящий нам linkage и storage duration, определиться с видимостью константы и тем, в каких единицах трансляции она будет представлена. Выбрать наиболее удобный способ определения: глобальная переменная, локальная переменная, статическое поле класса. Указать подходящую комбинацию спецификаторов static, inline и constexpr. Ещё может быть стоит сделать переменную шаблоном или ссылкой. А если речь идёт о строке, надо бы ещё не прогадать с типом: const char*, char[], std::string, std::string_view.
Если для вас все эти шаги очевидны - поздравляем! Это впечатляет. Если же вам, как и Михаилу, этот зоопарк немного взрывает мозг, то давайте вместе в этом разберёмся.
Доклад предполагает понимание концепций linkage и storage duration, объявления и определения, спецификаторов static, inline и constexpr и их комбинаций. Весь этот материал раскрыт в предыдущем докладе Михаила "Спецификаторы, квалификаторы и шаблоны" на C++ Russia Piter 2019.
прошло 2 года и я снова гуглю этот видос.
Классный доклад. Спасибо !
Теперь, когда меня будут спрашивать, почему язык С++ не для любителей, то я буду в них кидаться ссылкой на это видео и отбегать подальше :D
Да С# похож на С++ говорили они пока не посмотрели это видео :)
май гадебл
бляя. сколько же всего я не знал!