Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सी # और सी ++ के बीच का अंतर

आइए सबसे पहले C# और C++ के बारे में जानें -

  • C# एक सामान्य उद्देश्य वाली वस्तु-उन्मुख प्रोग्रामिंग भाषा है।
  • इसे शुद्ध वस्तु-उन्मुख प्रोग्रामिंग भाषा माना जाता है।
  • इसका उच्चारण 'सी शार्प' के रूप में किया जाता है।
  • इसे एंडर्स हेजल्सबर्ग और माइक्रोसॉफ्ट में उनकी टीम द्वारा विकसित किया गया था।
  • मेमोरी प्रबंधन स्वचालित रूप से कचरा संग्रहकर्ता द्वारा किया जाता है।
  • एक बार इसका उद्देश्य पूरा हो जाने पर वस्तु को स्वचालित रूप से हटाना भाषा का कर्तव्य है।
  • यह विंडोज़ विशिष्ट है, अर्थात इसका उपयोग सभी प्रणालियों पर नहीं किया जा सकता है।
  • यह एकाधिक वंशानुक्रम का समर्थन नहीं करता है।
  • C# में पॉइंटर्स का उपयोग केवल असुरक्षित मोड में किया जा सकता है।
  • इसे उच्च स्तरीय भाषा माना जाता है।
  • एक बार कोड संकलित हो जाने पर, यह एक मध्यवर्ती भाषा में परिवर्तित हो जाता है।
  • इसका उपयोग कंसोल अनुप्रयोगों के साथ-साथ मोबाइल और विंडोज़ अनुप्रयोगों को विकसित करने के लिए किया जा सकता है।
  • इसे समझना और इसके साथ काम करना आसान है, क्योंकि इसमें एक अच्छी तरह से परिभाषित वर्ग पदानुक्रम है।
  • सरणी डेटा संरचना में बाउंड चेकिंग एक कंपाइलर द्वारा की जाती है।
  • इसके कारण, जब कोई प्रोग्रामर किसी अमान्य सरणी अनुक्रमणिका तक पहुँचने का प्रयास करता है, तो इसके परिणामस्वरूप संकलन त्रुटि होती है।

C++

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

आइए अब अंतर देखें -

<वें शैली ="चौड़ाई:52.3809%; पाठ-संरेखण:केंद्र;">सी++
C#
C# एक सामान्य उद्देश्य वाली वस्तु-उन्मुख प्रोग्रामिंग भाषा है। C++ एक सांख्यिकीय रूप से टाइप की गई, बहु-प्रतिमान भाषा है।

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

  1. उच्च-स्तरीय भाषा और निम्न-स्तरीय भाषा के बीच अंतर

    आइए सबसे पहले हाई-लेवल और लो-लेवल लैंग्वेज के बारे में जानें - उच्च स्तरीय भाषा निम्न-स्तरीय भाषा की तुलना में इसे आसानी से व्याख्या और संकलित किया जा सकता है। इसे प्रोग्रामर के अनुकूल भाषा माना जा सकता है। इसे समझना आसान है। डीबग करना आसान है। रखरखाव के मामले में यह आसान है। इसे मशीन कोड में अनुवा

  1. प्रक्रियात्मक और गैर-प्रक्रियात्मक भाषा के बीच अंतर

    इस पोस्ट में, हम प्रक्रियात्मक और गैर-प्रक्रियात्मक भाषाओं के बीच के अंतर को समझेंगे - प्रक्रियात्मक भाषा कार्यक्रम कोड निर्देशों के अनुक्रम के रूप में लिखा जाता है। उपयोगकर्ता निर्दिष्ट करेगा कि क्या किया जाना है और इसे कैसे किया जा सकता है, अर्थात इसकी चरणबद्ध प्रक्रिया। इसे कमांड-संचालित भाषा मा

  1. गो और पायथन प्रोग्रामिंग लैंग्वेज के बीच अंतर

    जाओ जाएं 2007 में Google में रॉबर्ट ग्रिसेमर, रॉब पाइक और केन थॉम्पसन द्वारा विकसित एक प्रक्रियात्मक भाषा है और 2009 में इसे खुला स्रोत बनाया गया था। गो को समवर्ती प्रोग्रामिंग और पर्यावरण अपनाने को आसान बनाने के लिए विकसित किया गया था। पायथन पायथन 1991 में गुइडो वैन रोसुम द्वारा डिजाइन की गई एक व