2010-03-05 11 views
12

सी # कन्स्ट्रक्टर बाहरी संशोधक का उद्देश्य क्या है?सी # कन्स्ट्रक्टर बाहरी संशोधक का उद्देश्य

मुझे Win32 फ़ंक्शंस का आह्वान करने के लिए बाहरी पद्धतियों के उपयोग के बारे में पता है, लेकिन CONSTRUCTORS के बारे में क्या?

कृपया व्यावहारिक उदाहरण दें।

नोट इस:

class MyClass 
{ 
    public extern MyClass(); 
} 
+1

कृपया इसका अर्थ दें कि आपका क्या मतलब है। –

+0

मैंने सोचा था कि परिभाषा और उदाहरण का एमएसडीएन संस्करण मदद करेगा? http://msdn.microsoft.com/en-us/library/e59b22c5%28VS.80%29.aspx –

+1

लेकिन यह रचनाकारों पर काम नहीं करता है, शायद यह उनका सवाल है, लेकिन मुझे यकीन नहीं है, इसलिए मैं चाहता हूं उसे विस्तृत करने के लिए। –

उत्तर

1

C# कल्पना here इसके अलावा, निजी आंतरिक, संरक्षित और सार्वजनिक, निर्वासन इस्तेमाल किया जा सकता इंगित करता है और इस मानक बाहरी संदर्भ है कि - here देखते हैं। यह मेरे लिए कहता है कि बाद में कक्षा में contstructor जुड़ा हुआ है। बस PInvoke कॉल की तरह हैं। कुछ भी नहीं है, मैं अनुमान लगा रहा हूं, सी # कंपाइलर कार्यान्वयनकर्ता को बाहरी कंटेनर वाले बाह्य .net। मॉड्यूल को जोड़ने की इजाजत देता है।

मैं एक उदाहरण नहीं दे सकता, लेकिन मुझे लगता है कि एमसी ++ में कन्स्ट्रक्टर को लागू करने के लिए एक तरह से जोरदार होना चाहिए, या वास्तव में केवल एक साधारण आईएल मॉड्यूल।

6

मेरा मानना ​​है कि बाहरी सीटीआर का एक उपयोग/उद्देश्य सीएलआर के भीतर ही निर्माता को लागू करना है। यदि आप mscorlib.dll परावर्तक का उपयोग कर एकत्रित न और System.String प्रकार को देखो, आप देखेंगे:

[MethodImpl(MethodImplOptions.InternalCall)] 
public extern String(char[] value); 

कौन सा मूल रूप से हमें बताता है कि (चार []) स्ट्रिंग वर्ग के लिए ctor बाहर से कार्यान्वित किया जाता है, .NET रनटाइम के हिस्से के रूप में।

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