हमें किसी भी भाषा में ग्लोबल वेरिएबल्स का उपयोग करने से बचना चाहिए, न केवल C++ में। ऐसा इसलिए है क्योंकि ये वेरिएबल्स ग्लोबल नेमस्पेस को प्रदूषित करते हैं, बड़े प्रोजेक्ट्स में बहुत खराब बग्स पैदा कर सकते हैं क्योंकि उन्हें किसी भी फाइल से एक्सेस किया जा सकता है और इसलिए कहीं से भी मॉडिफाई किया जा सकता है। ये कुछ कारण हैं जिनकी वजह से ग्लोबल वेरिएबल्स को खराब माना जाता है:
ग्लोबल वेरिएबल्स को कोड के किसी भी हिस्से द्वारा बदला जा सकता है, जिससे हर संभावित उपयोग को याद रखना या तर्क करना मुश्किल हो जाता है।
एक ग्लोबल वेरिएबल का कोई एक्सेस कंट्रोल नहीं हो सकता। इसे प्रोग्राम के कुछ हिस्सों तक सीमित नहीं किया जा सकता।
ग्लोबल वेरिएबल्स का उपयोग कोड की बहुत टाइट कपलिंग का कारण बनता है।
ग्लोबल वेरिएबल्स का उपयोग नेमस्पेस प्रदूषण का कारण बनता है। इससे अनावश्यक रूप से ग्लोबल मान को पुनः असाइन किया जा सकता है।
ग्लोबल वेरिएबल्स का उपयोग करने वाले प्रोग्राम्स में टेस्टिंग बहुत दर्दनाक हो सकती है क्योंकि टेस्टिंग के दौरान उन्हें डिकपल करना मुश्किल होता है।
ध्यान दें कि कभी-कभी आपको ग्लोबल वेरिएबल का उपयोग करना ही पड़ता है। लेकिन ऐसा करने से पहले सुनिश्चित करें कि आपके पास कोई विकल्प है। ग्लोबल वेरिएबल्स के बारे में c2 विकी पर और पढ़ें: https://wiki.c2.com/?GlobalVariablesAreBad