#special_identifiers — Public Fediverse posts
Live and recent posts from across the Fediverse tagged #special_identifiers, aggregated by home.social.
-
CW: Ідентифікатори спеціального призначення в C++
У C++ окрім ключових слів які завжди означають щось одне є ідентифікатори спеціального призначення які можна використовувати як звичайні ідентифікатори(назви), але у деяких конкретних місцях вони розуміються компілятором як ключове слово.
Такими словами є
final,override,importіmodule. Ці ідентифікатори можуть використовуватись як назви змінних, констант, функцій, класів/структур чи іншого, але у спеціальних місцях вони набувають властивостей ключового слова.import <iostream>; struct override { int module; }; int main() { override final{4}; std::cout << final.module << std::endl; }Різні слова можна використовувати у різних місцях. Наприклад слова
final,moduleіimportне вийде використовувати у ролі назви класу, структури чи перечислення оскільки тут вони розуміються як ключові слова. Але це тільки у глобальному просторі імен якщо запхати клас уnamespace, то все запрацює.import <iostream>; namespace x { struct module { int override; }; } int main() { x::module final{4}; std::cout << final.override << std::endl; }Але щоб не плутати інших і себе також краще не використовувати їх так.
#cpp #cxx #final #override #import #module #cpp20 #keywords #namespace #special_identifiers #ключові_слова #спеціальні_ідентифікатори