C++ को एक मध्यम-स्तरीय भाषा के रूप में माना जाता है, क्योंकि इसमें उच्च-स्तरीय और निम्न-स्तरीय भाषा सुविधाओं का संयोजन होता है। यह C का सुपरसेट है, और वस्तुतः कोई भी कानूनी C प्रोग्राम एक कानूनी C++ प्रोग्राम है। C++ विभिन्न प्लेटफार्मों पर चलता है, जैसे कि विंडोज, मैक ओएस और यूनिक्स के विभिन्न संस्करण। C++ की कुछ विशेषताएं निम्नलिखित हैं जो इसे अन्य प्रोग्रामिंग भाषाओं से अलग बनाती हैं -
- बहु-प्रतिमान भाषा - C++ एक ऐसी भाषा है जो प्रक्रियात्मक, वस्तु-उन्मुख और सामान्य प्रोग्रामिंग का समर्थन करती है। यह इसे बहुत बहुमुखी बनाता है।
- संकेतों और संदर्भों का उपयोग - C++ पॉइंटर्स और संदर्भों का समर्थन करता है जो उपयोगकर्ता को सीधे मेमोरी से निपटने की अनुमति देता है और प्रोग्रामर को सारा नियंत्रण देता है। यह इसे निम्न-स्तरीय कार्यों और बहुत जटिल परियोजनाओं के लिए बहुत उपयुक्त बनाता है।
- स्थिर रूप से टाइप किया गया - एक भाषा स्थिर रूप से टाइप की जाती है यदि एक चर का प्रकार संकलन समय पर जाना जाता है। कुछ भाषाओं के लिए, इसका मतलब है कि आपको प्रोग्रामर के रूप में यह निर्दिष्ट करना होगा कि प्रत्येक चर किस प्रकार का है। यहाँ मुख्य लाभ यह है कि सभी प्रकार की जाँच कम्पाइलर द्वारा की जा सकती है, और इसलिए बहुत सी छोटी-छोटी बग बहुत ही प्रारंभिक अवस्था में पकड़ी जाती हैं।
- C++ आपको विभिन्न प्रकार (ऑब्जेक्ट्स?) के लिए एक ऑपरेटर के लिए एक से अधिक परिभाषा निर्दिष्ट करने की अनुमति देता है जिसे ऑपरेटर ओवरलोडिंग कहा जाता है। यह उपयोगकर्ताओं को बहुत जटिल प्रकारों को भी अंतर्निहित प्रकारों के रूप में मानने की अनुमति देता है।
- एक इंटरफ़ेस उस वर्ग के किसी विशेष कार्यान्वयन के लिए प्रतिबद्ध किए बिना C++ वर्ग के व्यवहार या क्षमताओं का वर्णन करता है। सी ++ इंटरफेस को अमूर्त वर्गों का उपयोग करके कार्यान्वित किया जाता है और इन अमूर्त वर्गों को डेटा एब्स्ट्रैक्शन के साथ भ्रमित नहीं होना चाहिए जो कि कार्यान्वयन विवरण को संबंधित डेटा से अलग रखने की अवधारणा है।
- मल्टीपल इनहेरिटेंस C++ की एक विशेषता है जहां एक वर्ग एक से अधिक वर्गों से इनहेरिट कर सकता है। विरासत में मिली कक्षाओं के रचनाकारों को उसी क्रम में बुलाया जाता है जिसमें वे विरासत में मिले हैं। डिस्ट्रक्टर्स को कंस्ट्रक्टर्स के रिवर्स ऑर्डर में बुलाया जाता है। एकाधिक वंशानुक्रम वस्तु को कई प्रकार के होने की अनुमति देते हैं और इसलिए कार्यक्रम में वास्तविक-विश्व मॉडलिंग को बहुत आसान बनाते हैं।
- टर्नरी ऑपरेटरों का उपयोग अंतराल के रूप में करना
- स्वचालित कीवर्ड जो प्रोग्रामर को हस्तक्षेप करने की आवश्यकता के बिना स्वचालित रूप से कटौती टाइप करता है।
C++ भाषा द्वारा समर्थित कई और विशेषताएं हैं। ऐसी विशेषताओं की विस्तृत सूची बनाना संभव नहीं है। ऐसी और अधिक सुविधाओं को स्वयं खोजने के लिए दस्तावेज़ों पर एक नज़र डालें!