सी # में कोई वैश्विक चर रहे हैं। एक चर हमेशा स्थानीय रूप से स्कॉप्ड होता है। कोड की मौलिक इकाई कक्षा है, और एक कक्षा के भीतर आपके पास फ़ील्ड, विधियां और गुण हैं।
आप "वैश्विक चर" कुछ कक्षा में एक सार्वजनिक स्थैतिक क्षेत्र या संपत्ति बनाकर नकल कर सकते हैं, लेकिन आप नहीं करना चाहिए। सी # एक बहुत अच्छे कारण के लिए यह मुश्किल बनाता है; वैश्विक चर शुद्ध बुराई हैं। वे ओओ डिजाइन के कई अच्छे सिद्धांतों का उल्लंघन करते हैं - encapsulation, ढीले युग्मन, और उच्च संयोजन, कुछ ही नाम देने के लिए।
मुझे एहसास है कि यह एक शुरुआती प्रश्न है, लेकिन मुझे लगता है कि यह है क्योंकि यह एक शुरुआती सवाल है कि यह कहना बहुत महत्वपूर्ण है। अब सीखना शुरू करने का सबसे अच्छा समय है कि कौन सी रणनीति सक्रिय रूप से निराश होती है या सी # में भी खतरनाक होती है, और वैश्विक चर के रूप में स्थिर क्षेत्र/संपत्ति का उपयोग करके उनमें से लगभग छह है। इन संरचनाओं के लिए वैध उपयोग हैं, लेकिन स्थान से स्थान पर डेटा पास करना उनमें से एक नहीं है।
यदि दो अलग-अलग वर्ग एक ही जानकारी पर निर्भर करते हैं, तो स्रोत से जानकारी पर जानकारी पास करें। यह आमतौर पर या तो कन्स्ट्रक्टर के माध्यम से या विधि के लिए तर्क के रूप में किया जाता है। आपके पास हमेशा एक और एक उदाहरण होना चाहिए जो वास्तव में इस जानकारी का "मालिक" है; जानकारी "ग्लोबल" का अर्थ है कि आप इस बारे में कोई कारण नहीं बता सकते कि किसी भी समय दिए गए या उसके आधार पर क्या हो सकता है।
कृपया इस पर विचार करें, और उन तरीकों के बारे में सोचने का प्रयास करें जिन्हें आप वैश्विक चर में संग्रहीत करना चाहते हैं (यानी इसे एक निर्माता या विधि के लिए तर्क के रूप में प्रदान करके)। यदि आप निश्चित नहीं हैं, तो आप जो करने का प्रयास कर रहे हैं उसका एक उदाहरण पोस्ट करें और हम मदद करेंगे।
मैं व्यक्तिगत रूप से आपकी शब्दावली से "वैश्विक परिवर्तनीय" वाक्यांश को मिटाने की अनुशंसा करता हूं। – Aaronaught
भविष्य के संदर्भ के लिए, जो कुछ छोटा है, वह कुछ है जो आपको सरल लगता है। – NerdFury