C ++ एक सामान्य-प्रयोजन प्रोग्रामिंग भाषा है। यह मूल रूप से C के विस्तार के रूप में डिज़ाइन किया गया था और इसमें एक समान सिंटैक्स है, लेकिन यह अब पूरी तरह से अलग भाषा है। C ++ कंपाइलर के साथ संकलित कोड के बारे में प्रश्नों के लिए इस टैग का उपयोग करें। विशिष्ट मानक संशोधन [C ++ 11], [C ++ 14], [C ++ 17], [C ++ 20] या [C ++ 23], आदि से संबंधित प्रश्नों के लिए संस्करण-विशिष्ट टैग का उपयोग करें। ।

C ++ क्या है?

C ++ एक (ज्यादातर) स्टेटिक-टाइप किया गया, निःशुल्क-फ़ॉर्म, (आमतौर पर) संकलित, बहु-प्रतिमान, मध्यवर्ती स्तर है सामान्य प्रयोजन प्रोग्रामिंग भाषा; cया c++-cliसे भ्रमित न हों। यह 1980 के दशक की शुरुआत में Bjarne Stroustrupद्वारा विकसित किया गया था, शुरू में C प्रोग्रामिंग लैंग्वेज के एक्सटेंशन के रूप में। C पर भवन, C ++में सुधार हुआ प्रकार-सुरक्षा < अन्य सुविधाओं के बीच स्वचालित संसाधन प्रबंधन, ऑब्जेक्ट-ओरिएंटेशन, जेनेरिक प्रोग्रामिंग और अपवाद हैंडलिंग के लिए / a> और अतिरिक्त समर्थन।


C ++ में नया?

चाहे आप प्रोग्रामिंग के लिए नए हैं या किसी अन्य प्रोग्रामिंग भाषा से C ++ में आ रहे हैं, यह एक अच्छी पुस्तक है जिसके लिए भाषा सीखने के लिए अत्यधिक अनुशंसित है। हम एक विस्तृत पुस्तकों की सूचीरखते हैं।

यदि आप अच्छे संकलक की तलाश कर रहे हैं, तो GCCलिनक्स और अन्य यूनिक्स जैसे प्लेटफार्मों पर सबसे अधिक इस्तेमाल किया जाने वाला कंपाइलर है; क्लैंगमैक और फ्रीबीएसडी पर आधिकारिक संकलक है; Microsoft विज़ुअल C ++विंडोज पर सबसे अधिक इस्तेमाल किया जाने वाला कंपाइलर है। Intel® C ++ कंपाइलरका उपयोग आमतौर पर इसके अनुकूलित के लिए भी किया जाता है विंडोज, लिनक्स और मैक पर संख्यात्मक अभिकलन।

टर्बो-सी ++ 3.0 1991 से है, बहुत पुराना है, और निश्चित रूप से अनुशंसित नहीं है। इस सहस्राब्दी से मुक्त विकल्पों के लिए पिछले पैराग्राफ को देखें।

हमसे चैट में शामिल हों, जहां हम C ++, सामान्य रूप से प्रोग्रामिंग, और यहां तक ​​कि अन्य सामान जब सूरज ढल जाता है और बोरियत लताड़ में चर्चा करते हैं। हास्य की अपनी भावना को मत भूलना, लेकिन इसे सभ्य रखें।


c++टैग का उपयोग

C ++ प्रोग्रामिंग के बारे में प्रश्न पोस्ट करते समय, कृपया शामिल करना सुनिश्चित करें:

  • लक्ष्य प्रणाली और संकलक जानकारी। इसमें संकलक का नाम, संस्करण और संकलन करने के लिए उपयोग की जाने वाली सेटिंग्स शामिल हैं।
  • यदि आपका प्रश्न भाषा के किसी एक विशेष संस्करण के लिए विशिष्ट है, तो c++98c+%जोड़ें2b03c++11c++14c++17, c++20या c++23। बढ़ावा देने के बारे में प्रश्न boostटैग जोड़ना चाहिए। विभिन्न संस्करणों के बारे में विवरण नीचे इस विकी में पाया जा सकता है।
  • जब तक यह प्रश्न स्पष्ट रूप से उल्लेख नहीं करता है कि C ++ मानक के किस संस्करण का उपयोग किया जाता है, यह माना जाता है कि वर्तमान संस्करण का उपयोग किया जाता है। अर्थात्, आईएसओ 14882 का जो भी संस्करण है, आईएसओ वर्तमान में सक्रिय रूप में सूचीबद्ध है। c++टैग किए गए प्रश्नों का उत्तर या टिप्पणी करते समय कृपया इसे ध्यान में रखें।

cऔर c++का एक साथ उपयोग करना

C और C ++ दो अलग और अक्सर असंगत भाषाएं हैं। जब तक आपके पास अच्छे कारण नहीं हैं, तब तक एक ही प्रश्न में दोनों टैग का उपयोग करने से बचें।

एक प्रश्न केवल cके साथ टैग किया जाना चाहिए, यदि:

  • इसमें शुद्ध C होता है, जिसमें C ++ का कोई निशान नहीं होता है, या ऐसे कोड वाले प्रश्न होते हैं जो या तो भाषा हो सकते हैं।
  • कोड को C कंपाइलर के साथ संकलित किया गया है।

एक प्रश्न केवल c++के साथ टैग किया जाना चाहिए, यदि:

  • इसमें किसी भी C ++ फीचर्स वाला कोड होता है। कोड भले ही "सी स्टाइल" हो।
  • कोड को C ++ कंपाइलर के साथ संकलित किया गया है।

यदि यह है तो cऔर c++दोनों के साथ एक प्रश्न को टैग किया जाना चाहिए:

  • C और C ++ के बीच विशिष्ट अंतर।
  • C और C ++ के बीच संगतता या पोर्टिंग कोड।
  • C ++ कोड जो C पुस्तकालयों का उपयोग करता है (उदाहरण के लिए extern "C" का उपयोग करके कोड)।

cऔर c++टैग के साथ पदों के लिए संपादन और मॉडरेशन दिशानिर्देश:

दोनों टैग के साथ / पुनः-टैग / मध्यम प्रश्नों को संपादित करने के लिए, यह अनुशंसा की जाती है कि आपके पास पूर्ण संपादन विशेषाधिकार हैं और या तो एक स्वर्ण cया एक सोना सी ++बिल्ला।

यदि आप दोनों टैग के साथ एक पोस्ट का सामना करते हैं, तो उपरोक्त नियमों के अनुसार इसे संपादित / पुनः टैग करें। यदि आप पोस्ट किए गए कोड को पढ़कर भाषा बता सकते हैं, तो तदनुसार टैग संपादित करें। उपयोगकर्ता को "क्या यह C या C ++ है?" टिप्पणी में जब तक सवाल वास्तव में अस्पष्ट है।

अस्पष्ट प्रश्न का एक उदाहरण है जब उपयोगकर्ता स्पष्ट रूप से दावा करता है कि वे C में प्रोग्रामिंग कर रहे हैं, लेकिन C ++ के लिए कोड या संकलक संदेश पोस्ट करते हैं। यदि हां, तो स्पष्टीकरण के लिए संकेत दें और अस्पष्ट के रूप में बंद करें।

"या तो सी या सी ++ ठीक है" ओपी से राय एक खराब या अस्पष्ट प्रश्न का एक मजबूत संकेत है। उठाए गए भाषा के आधार पर उत्तर बहुत भिन्न हो सकते हैं। स्पष्टीकरण के लिए शीघ्र, अस्पष्ट के रूप में बंद / बहुत व्यापक जब तक कि ओपी ने यह स्पष्ट नहीं किया है।

एक बार पोस्ट किए गए उत्तर को फिर से टैग करने के बारे में सावधान रहें, खासकर अगर वहाँ पहले से ही सी और सी ++ दोनों उत्तर पोस्ट किए गए हैं। ऐसे मामलों में, टैग को अकेला छोड़ दिया जाना चाहिए, क्योंकि उन्हें बदलने से पोस्ट किए गए उत्तर अमान्य हो जाएंगे।

C ++ कोड वाले C प्रश्न के उत्तर जिन्हें कभी भी c++टैग नहीं किया गया है, उन्हें ऑफ-टॉपिक के रूप में हटा दिया जाना चाहिए। कृपया इस तरह के उत्तरों को चिह्नित करने / हटाने से पहले प्रश्न संपादित करें इतिहास की जांच करें, यह सत्यापित करने के लिए कि प्रश्न में कभी भी C ++ टैग नहीं था।


c++98

1998 में, C ++ मानक समिति ने C ++ ISO / IEC 14002: 1998के लिए पहला अंतरराष्ट्रीय मानक प्रकाशित किया। , जिसे अनौपचारिक रूप से C ++ 98 के रूप में जाना जाएगा।


c++03

2003 में, C ++ कमेटी ने उन कई समस्याओं का जवाब दिया जो c++98के साथ बताई गई थीं, और उसी के अनुसार इसे संशोधित किया गया। परिवर्तित भाषा C ++ 03 को डब किया गया था।


c++11

भाषा मानक लंबे समय तक एक जैसा रहा, लेकिन 2011 में एक नया मानक, C ++ 11 (पूर्व में C ++ 0x के रूप में जाना जाता था) ISO/IEC 14882: 2011। "बिग बैंग" दृष्टिकोण के बजाय, इसे धीरे-धीरे लुढ़काया जा रहा है क्योंकि संकलक नई भाषा सुविधाओं का समर्थन कर रहे हैं। भाषा में नया क्या है, यह देखने के लिए Bjarne Stroustrup के C ++ 11 FAQदेखें और अपने कंपाइलर के FAQ को देखें। वर्तमान में उन सुविधाओं में से कौन सी समर्थित हैं:

कुछ विशेषताएं जो C ++ 11 के लिए चर्चा में थीं, उन्हें अगले पुनरावृत्ति में स्थगित कर दिया गया है।


c++14

C ++ 14 C ++ 11 का एक छोटा विस्तार है। इसे अगस्त 2014 में मंजूरी दी गई थी और उसी वर्ष दिसंबर में जारी किया गया था। पहले अनुमोदन के वर्ष के रूप में C ++ 1y के रूप में संदर्भित अनिश्चित था। कई लोकप्रिय संकलक में पहले से ही C ++ 14 समर्थन का कुछ स्तर है।


c++17

C ++ 17 में कुछ और प्रमुख विशेषताएं (और कई मामूली) हैं। इसे आमतौर पर C ++ 1z या C ++ 17 के रूप में संदर्भित किया जाता है, क्योंकि नए मानक पर तकनीकी कार्य मार्च 2017 में पूरा हो गया था। मसौदा मानक को सर्वसम्मति से आधिकारिक रूप से प्रकाशित


c++20

फरवरी 2020 में C ++ मानक समिति ने C ++ 20 पर काम पूरा किया। उस वर्ष बाद में इसे सर्वसम्मति से अनुमोदित किया गया और इसे दिसंबर 2020 में आधिकारिक रूप से प्रकाशित किया गया]।

निम्नलिखित (और अधिक) नई सुविधाओं को पहले ही C ++ 20 में स्वीकार किया जा चुका है:


c++23

निम्नलिखित (और अधिक) नई सुविधाओं को पहले ही C ++ 23 मसौदे में स्वीकार कर लिया गया है:


ऑनलाइन संकलक

यदि आप C ++ को एक स्पिन देना चाहते हैं, तो आप निम्न ऑनलाइन कंपाइलर सेवाओं में से एक का प्रयास कर सकते हैं:

  • Coliru(GCC, Clang)
  • ideone.com(GCC, Clang)
  • कोडपैड(GCC)
  • rextester(GCC, Clang, Visual C ++)
  • repl.it(GCC)
  • ELLCC(क्लैंग)
  • कोडिंगगंज(GCC)
  • C ++ शैल(GCC)
  • Wandbox(GCC, Clang)
  • कंपाइलर एक्सप्लोरर(GCC, Clang, ICC, Visual C ++)। X86 के लिए GCC / Clang के कई संस्करण, और कुछ गैर- x86 आर्किटेक्चर (ARM, ARM64, PPC, और AVR) के लिए, साथ ही साथ Microsoft Visual C ++ के नवीनतम संस्करण भी। निष्पादन (./a.out बटन) के अलावा, इसमें अच्छी तरह से स्वरूपित कोडांतरक आउटपुट, यहां तक ​​कि वैकल्पिक रूप से रंग-हाइलाइटिंग स्रोत और कोडांतरक लाइनें शामिल हैं जो यह पता लगाने में मदद करती हैं कि कौन सी स्रोत रेखा किस कोडांतरक लाइन को मैप करती है।
  • C ++ Insights(Clang) कोड का ट्रांस-कंपाइलर जो C ++ 98 कोड दिखाता है जो आधुनिक कंस्ट्रक्शन पर मैप करता है
  • त्वरित बेंच(GCC, Clang) माइक्रो बेंचमार्किंग टूल जिसका उद्देश्य कोड स्निपेट्स के प्रदर्शन की तुलना जल्दी और आसानी से करना है।


स्टैक ओवरफ्लो का C ++ c++-faq


बाहरी पूछे जाने वाले प्रश्न


अन्य बाहरी संसाधन


चैट रूम