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

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


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

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

  • एक वैश्विक चर का कोई अभिगम नियंत्रण नहीं हो सकता है। इसे कार्यक्रम के कुछ हिस्सों तक सीमित नहीं किया जा सकता है।

  • वैश्विक चर का उपयोग करने से कोड का बहुत सख्त युग्मन होता है।

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

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

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


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

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

  1. हम C/C++ में संशोधक का उपयोग क्यों करते हैं?

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

  1. हमारे पास C# में वैश्विक चर क्यों नहीं हैं?

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