2011-11-27 11 views
13

संभव डुप्लिकेट:
What is the difference between const and readonly?स्थिरांक बनाम स्थिर केवल पढ़ने के लिए

तो मैं क्या पढ़ा, सी # में से, const और static readonly दोनों एक मूल्य के एक कार्यक्रम के निष्पादन के दौरान अपरिवर्तनीय कर देगा ।

हालांकि, const मात्राओं के साथ उपयोग किया जाना चाहिए जो कभी भी बदलने की संभावना नहीं है (जैसे पीआई, पृथ्वी का त्रिज्या, गैलन प्रति लिटर आदि)।

दूसरी ओर, static readonly का उपयोग उन मानों के साथ किया जाना चाहिए जो वर्तमान में स्थिर हैं लेकिन भविष्य में बदल सकते हैं (जैसे सॉफ्टवेयर संस्करण, एल्गोरिदम आदि में गुणक)।

क्या मुझे यह सही मिला है?

+0

वास्तव में यह डुप्लिकेट है: http://stackoverflow.com/questions/755685/c-static-readonly-vs-const मैंने इसे पोस्ट करने से पहले देखा लेकिन यह सरल अंग्रेजी के साथ इसे समझाता है इससे पहले गहराई में जाता है – s5s

+0

यह एक अच्छा लिंक है, विशेष रूप से दूसरा जवाब कॉन्स्ट और स्थिर पाठ के बीच संकलन अंतर के संबंध में दूसरा जवाब है। – Dunes

उत्तर

29

मैं अपने दूसरे मद के बारे में पता नहीं है (मैं शायद एक सॉफ्टवेयर संस्करण या एक एल्गोरिथ्म के लिए एक निरंतर ... लगातार प्रयोग करेंगे), लेकिन वहाँ के बीच दो एक महत्वपूर्ण अंतर है: const केवल इस तरह के string के रूप में बुनियादी प्रकार हो सकते हैं, bool, या संख्यात्मक प्रकार। static readonly कोई ऑब्जेक्ट रख सकता है। इसलिए, उदाहरण के लिए, मैं ऑब्जेक्ट्स जैसे संसाधनों को संग्रहीत करने के लिए अक्सर static readonly का उपयोग करता हूं। वे const नहीं हो सकते हैं।

+1

ओह मैं देखता हूं। मुझे यह नहीं पता था – s5s

संबंधित मुद्दे