C++ एक प्रोग्रामिंग भाषा है जिसे ब्यार्ने स्ट्रॉस्ट्रप द्वारा 1979 में बेल लैब्स में विकसित किया गया था। C++ को एक मिडिल-लेवल भाषा माना जाता है, क्योंकि इसमें हाई-लेवल और लो-लेवल दोनों भाषा विशेषताओं का संयोजन होता है। यह C का सुपरसेट है, और वस्तुतः कोई भी वैध C प्रोग्राम एक वैध C++ प्रोग्राम है। C++ विभिन्न प्लेटफॉर्म्स पर चलता है, जैसे Windows, Mac OS, और UNIX के विभिन्न संस्करण।
इसे सिस्टम प्रोग्रामिंग और एम्बेडेड, संसाधन-सीमित और बड़े सिस्टम्स की ओर झुकाव के साथ डिज़ाइन किया गया था, जिसमें प्रदर्शन, दक्षता और उपयोग की लचीलापन इसके डिज़ाइन हाइलाइट्स थे। इसका उपयोग सॉफ्टवेयर इंफ्रास्ट्रक्चर और संसाधन-सीमित एप्लिकेशन्स के विकास में किया गया है, जिसमें डेस्कटॉप एप्लिकेशन्स, सर्वर्स (जैसे ई-कॉमर्स, वेब सर्च या SQL सर्वर्स), और प्रदर्शन-महत्वपूर्ण एप्लिकेशन्स (जैसे टेलीफोन स्विच या स्पेस प्रोब्स) शामिल हैं।
C++ को C के उत्तराधिकारी के रूप में डिज़ाइन किया गया था और यह एक नई भाषा थी जिसने कंप्यूटर साइंस में कई कॉन्सेप्ट्स पेश किए। C++ ने जेनेरिक प्रोग्रामिंग के लिए टेम्प्लेट्स का कॉन्सेप्ट पेश किया। इसने RAII (रिसोर्स एलोकेशन इज़ इनिशियलाइज़ेशन) और डिटरमिनिस्टिक डिस्ट्रक्टर्स भी पेश किए जो बेहतर मेमोरी मैनेजमेंट में मदद करते हैं।
C++ ने यूजर-ओवरलोडेबल ऑपरेटर्स का कॉन्सेप्ट पेश किया जिससे C++ में यूजर-डिफाइन्ड टाइप्स बिल्ट-इन टाइप्स जैसे लगते हैं। यह मल्टीपल इनहेरिटेंस का भी समर्थन करता है जो जटिल वास्तविक जीवन निर्माणों के मॉडलिंग में मदद करता है।
अंत में, C++ मशीन के बहुत करीब एक बहुत संरचित भाषा है और विभिन्न कार्यों के लिए उपयोग की जाती है जिनमें आपको कच्चे प्रदर्शन की आवश्यकता होती है। इसका उपयोग विभिन्न एप्लिकेशन्स को लागू करने के लिए किया गया है जो अन्य भाषाओं के साथ बनाए जाने पर बस बहुत धीमे या अनरखरखाव योग्य होंगे।
उदाहरण के लिए, अधिकांश वित्तीय संस्थान वित्तीय डेटा को मॉडल करने के लिए C++ का उपयोग करते हैं क्योंकि यह बहुत तेज है। यह C से एक स्तर ऊपर है लेकिन C के समान कार्यक्षमता प्रदान करता है और इसलिए एम्बेडेड वातावरण में भी उपयोग किया जा सकता है। इसका उपयोग अक्सर गेम इंजन, गेम्स, और डेस्कटॉप ऐप्स विकसित करने के लिए किया जाता है। कई AAA टाइटल वीडियो गेम C++ के साथ बनाए गए हैं।