कीवर्ड वे शब्द हैं जिनका अर्थ पहले से ही कंपाइलर द्वारा परिभाषित किया गया है। इन खोजशब्दों का उपयोग पहचानकर्ता के रूप में नहीं किया जा सकता है। ध्यान दें कि कीवर्ड आरक्षित शब्दों और पूर्वनिर्धारित पहचानकर्ताओं का संग्रह हैं। पूर्वनिर्धारित पहचानकर्ता ऐसे पहचानकर्ता होते हैं जिन्हें संकलक द्वारा परिभाषित किया जाता है लेकिन उपयोगकर्ता द्वारा अर्थ में बदला जा सकता है।
उदाहरण के लिए, आप अपने main फ़ंक्शन के अंदर main नामक एक वेरिएबल घोषित कर सकते हैं, इसे इनिशियलाइज़ कर सकते हैं, और फिर इसका मान प्रिंट कर सकते हैं (लेकिन केवल यह सत्यापित करने के लिए कि आप कर सकते हैं!) दूसरी ओर, आप इसे अन्य नाम के चर के साथ नहीं कर सकते। अंतर यह है कि और एक आरक्षित शब्द है, जबकि मुख्य "केवल" एक पूर्वनिर्धारित पहचानकर्ता है।
C++ में कुल 95 आरक्षित शब्द हैं। C++ के आरक्षित शब्दों को आसानी से कई समूहों में रखा जा सकता है। पहले समूह में, हमने उन लोगों को रखा जो सी प्रोग्रामिंग भाषा में भी मौजूद थे और जिन्हें सी ++ में ले जाया गया है। इनमें से 32 हैं।
ऐसे 30 अन्य आरक्षित शब्द हैं जो C में नहीं थे, इसलिए C++ प्रोग्रामिंग भाषा के लिए नए हैं।
11 C++ आरक्षित शब्द हैं जो आवश्यक नहीं हैं जब मानक ASCII वर्ण सेट का उपयोग किया जा रहा है, लेकिन उन्हें C++ ऑपरेटरों में से कुछ के लिए पठनीय विकल्प प्रदान करने के लिए जोड़ा गया है, और साथ ही प्रोग्रामिंग की सुविधा के लिए भी जोड़ा गया है वर्ण सेट जिनमें C++ के लिए आवश्यक वर्णों की कमी है।
इन सभी आरक्षित शब्दों की सूची यहां दी गई है:
alignas (C++11 के बाद से) | दोहरा | reinterpret_cast |
alignof (C++11 से) | dynamic_cast | आवश्यकता है (C++20 के बाद से) |
and | अन्य | वापसी |
and_eq | enum | संक्षिप्त |
asm | स्पष्ट | हस्ताक्षरित |
atomic_cancel (TM TS) | निर्यात(1) | sizeof(1) |
atomic_commit (TM TS) | बाहरी(1) | static |
atomic_noexcept (TM TS) | false | static_assert (C++11 के बाद से) |
auto(1) | float | static_cast |
bitand | के लिए | संरचना(1) |
bitor | दोस्त | स्विच |
bool | goto | सिंक्रनाइज़ (TM TS) |
ब्रेक | if | टेम्पलेट |
case | आयात करें (मॉड्यूल TS) | this |
catch | इनलाइन(1) | thread_local (C++11 के बाद से) |
char | int | थ्रो |
char16_t (C++11 से) | long | true |
char32_t (C++11 से) | मॉड्यूल (मॉड्यूल TS) | कोशिश करें |
class(1) | परिवर्तनीय(1) | typedef |
compl | namespace | typeid |
कॉन्सेप्ट (C++20 से) | नया | typename |
const | कोई अपवाद नहीं (C++11 के बाद से) | संघ |
constexpr (C++11 के बाद से) | नहीं | अहस्ताक्षरित |
const_cast | not_eq | का उपयोग कर(1) |
जारी रखें | nullptr (C++11 के बाद से) | आभासी |
co_await (coroutines TS) | संचालक | शून्य |
co_return (coroutines TS) | या | अस्थिर |
co_yield (coroutines TS) | or_eq | wchar_t |
decltype (C++11 के बाद से) | निजी | जबकि |
डिफ़ॉल्ट(1) | संरक्षित | xor |
delete(1) | सार्वजनिक | xor_eq |
do | रजिस्टर(2) | |