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

C/C++ में ग्लोबल वेरिएबल्स का उपयोग क्यों नहीं करना चाहिए?


हमें किसी भी भाषा में ग्लोबल वेरिएबल्स का उपयोग करने से बचना चाहिए, न केवल C++ में। ऐसा इसलिए है क्योंकि ये वेरिएबल्स ग्लोबल नेमस्पेस को प्रदूषित करते हैं, बड़े प्रोजेक्ट्स में बहुत खराब बग्स पैदा कर सकते हैं क्योंकि उन्हें किसी भी फाइल से एक्सेस किया जा सकता है और इसलिए कहीं से भी मॉडिफाई किया जा सकता है। ये कुछ कारण हैं जिनकी वजह से ग्लोबल वेरिएबल्स को खराब माना जाता है:

  • ग्लोबल वेरिएबल्स को कोड के किसी भी हिस्से द्वारा बदला जा सकता है, जिससे हर संभावित उपयोग को याद रखना या तर्क करना मुश्किल हो जाता है।

  • एक ग्लोबल वेरिएबल का कोई एक्सेस कंट्रोल नहीं हो सकता। इसे प्रोग्राम के कुछ हिस्सों तक सीमित नहीं किया जा सकता।

  • ग्लोबल वेरिएबल्स का उपयोग कोड की बहुत टाइट कपलिंग का कारण बनता है।

  • ग्लोबल वेरिएबल्स का उपयोग नेमस्पेस प्रदूषण का कारण बनता है। इससे अनावश्यक रूप से ग्लोबल मान को पुनः असाइन किया जा सकता है।

  • ग्लोबल वेरिएबल्स का उपयोग करने वाले प्रोग्राम्स में टेस्टिंग बहुत दर्दनाक हो सकती है क्योंकि टेस्टिंग के दौरान उन्हें डिकपल करना मुश्किल होता है।

ध्यान दें कि कभी-कभी आपको ग्लोबल वेरिएबल का उपयोग करना ही पड़ता है। लेकिन ऐसा करने से पहले सुनिश्चित करें कि आपके पास कोई विकल्प है। ग्लोबल वेरिएबल्स के बारे में c2 विकी पर और पढ़ें: https://wiki.c2.com/?GlobalVariablesAreBad


  1. C/C++ में क्लाइंट-सर्वर मॉडल का उपयोग करके स्ट्रिंग रिवर्स करना C/C++ में क्लाइंट-सर्वर मॉडल का उपयोग करके स्ट्रिंग रिवर्स करना

    यहां हम एक ऐसा सिस्टम बनाएंगे जहां एक क्लाइंट और एक सर्वर होगा। क्लाइंट सर्वर को एक स्ट्रिंग भेजेगा, सर्वर उस स्ट्रिंग को रिवर्स करेगा और वापस क्लाइंट को भेज देगा। इसके लिए हम सॉकेट प्रोग्रामिंग की अवधारणा का उपयोग करेंगे। क्लाइंट-सर्वर कनेक्शन स्थापित करने के लिए हमें एक पोर्ट बनाना होगा। पोर्ट न

  1. - C/C++ में मॉडिफायर्स का उपयोग क्यों करते हैं?

    एक मॉडिफायर का उपयोग बेस टाइप के अर्थ को बदलने के लिए किया जाता है ताकि यह आपकी आवश्यकताओं के अनुसार काम करे। उदाहरण के लिए, समय नकारात्मक नहीं हो सकता और इसे अनसाइन्ड बनाना समझदारी है। C++ char, int, और double डेटा टाइप्स को उनसे पहले मॉडिफायर्स रखने की अनुमति देता है। डेटा टाइप मॉडिफायर्स यहां सूच

  1. - C# में ग्लोबल वेरिएबल्स क्यों नहीं हैं

    C# में ग्लोबल वेरिएबल्स नहीं होते और C++ में ग्लोबल वेरिएबल्स के लिए उपयोग किया जाने वाला स्कोप रिज़ॉल्यूशन ऑपरेटर नेमस्पेसेस से संबंधित है। इसे ग्लोबल नेमस्पेस एलियास कहा जाता है। यदि आपके पास एक टाइप है जो अलग नेमस्पेस में एक आइडेंटिफायर शेयर करता है, तो उन्हें स्कोप रिज़ॉल्यूशन ऑपरेटर का उपयोग कर