मुझे विश्वास नहीं है कि जेनरेट कोड यह जांच करेगा कि क्लास को हर बार जब यह एक स्थिर सदस्य (जिसमें फ़ंक्शंस शामिल है) तक पहुंच जाती है। मेरा मानना है कि हर पहुंच की जांच अक्षम होगी। मैं ECMA 334 में §17.11 को देखा और यह कहते हैंसी # कैसे एक स्थिर कन्स्ट्रक्टर चलाने के लिए पता है?
एक स्थिर निर्माता के निष्पादन के लिए एक आवेदन डोमेन के भीतर होने की निम्न इवेंट के पहले से शुरू हो रहा है:
- का एक उदाहरण वर्ग बनाया गया है।
- कक्षा के किसी भी स्थिर सदस्य का संदर्भ दिया जाता है।
ऐसा लगता है कि 'पहला' होता है जब परिभाषित नहीं किया जाता है। मैं ऐसा करने के किसी भी तरीके से नहीं सोच सकता लेकिन हर बार जांच कर सकता हूं। यह कैसे किया जा सकता है?
संबंधित मामले के लिए संबंधित: http://csharpindepth.com/Articles/General/Beforefieldinit.aspx - यह गैर-तुच्छ –
है, यह पहले के बाद किसी भिन्न स्थान पर फ़ंक्शन पॉइंटर सेट करने का सवाल नहीं है कहते हैं? सबसे पहले यह वर्ग लोडर या जो भी हो, उसके बाद समारोह के शरीर पर इंगित करता है ... – user1096188
@Marc: स्थैतिक कन्स्ट्रक्टर को कॉल करते समय चर्चा करता है इससे पहले कि एक स्थिर सदस्य की पहली पहुंच की अनुमति है, न कि पहली पहुंच कैसे प्राप्त की जाती है । –