2010-05-13 13 views
5

के अधिकांश सामान्य अनुप्रयोग अब लोग कुछ समय के लिए सी # 4.0 का उपयोग कर रहे हैं, मैंने सोचा था कि मैं देखता हूं कि लोग अक्सर 'गतिशील' प्रकार का उपयोग कैसे करते थे और इसने उन्हें अपनी समस्या को बेहतर तरीके से हल करने में क्यों मदद की इससे पहले कि वे पहले किया हो सकता है?सी # 4.0 गतिशील प्रकार

उत्तर

3

उदाहरण के लिए प्रतिबिंब का उपयोग करते समय।

उदाहरण के लिए, कुछ इस तरह:

object calc = GetCalculator(); 
Type calcType = calc.GetType(); 
object res = calcType.InvokeMember("Add", BindingFlags.InvokeMethod, null, new object[] { 10, 20 }); 
int sum = Convert.ToInt32(res); 

से बन जाएगा:

dynamic calc = GetCalculator(); 
int sum = calc.Add(10, 20); 

एक बड़ा सुधार है मुझे लगता है कि यही कारण है कि।

लेकिन ऐसे कई विषय हैं जहां यह काम में आ सकता है। उदाहरण के लिए जब COM इंटरॉप वस्तुओं के साथ काम करने के लिए इस काम में आ सकता है, पर देखो: http://www.devx.com/dotnet/Article/42590

2

यह भी जब इस तरह के IronPython/IronRuby के रूप में गतिशील भाषाओं को एम्बेड लोड हो रहा है प्रकार के बाहरी स्रोत फ़ाइलों में परिभाषित अनुमति देने के लिए, और उन्हें और अधिक सीधे पहुँचने के लिए किया जाता है सी #

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