मैं दो तरीकों के साथ MSIL में एक छोटा सा DLL बनाया:रिटर्न प्रकार ओवरलोडिंग का उपयोग करना वास्तव में असंभव है?
float AddNumbers(int, int)
int AddNumbers(int, int)
आप में से कुछ पता होगा, MSIL आप जब तक आप बदले प्रकार के विभिन्न प्रकार है जैसे तरीकों है कि एक ही तर्क बनाने के लिए अनुमति देता है (क्या रिटर्न टाइप ओवरलोडिंग कहा जाता है)।
float f = ILasm1.MainClass.AddNumbers(1, 2);
त्रुटि है:
The call is ambiguous between the following methods or properties: 'ILasm1.MainClass.AddNumbers(int, int)' and 'ILasm1.MainClass.AddNumbers(int, int)'
सी # वास्तव में अलग वापसी प्रकार के बीच भेद करने में असमर्थ है अब, जब मैं ग # से इसका इस्तेमाल करने, के रूप में मैं थोड़े उम्मीद कर रहा था की कोशिश की, यह एक त्रुटि निकाल दिया ? मुझे पता है कि मैं उन प्रोग्राम विधियों को नहीं कर सकता जो कि अलग-अलग रिटर्न प्रकारों के अंतर के रूप में हैं, लेकिन मैं हमेशा मानता हूं कि यह इसे संभालने का तरीका होगा।
लगता है कि आईएल इसका समर्थन करता है http://blogs.msdn.com/abhinaba/archive/2005/10/07/478221.aspx –
यह इसका समर्थन करता है मुझे पहले से ही पता है..मैंने इसके साथ एक असेंबली बनाई है, जैसा कि आप कर सकते हैं मैंने जो लिखा है उसमें देखें .. –