मुझे स्पष्ट रूप से सामान्य पैरामीटर प्रकार क्यों प्रदान करना चाहिए जबकि संकलक को प्रकार का अनुमान लगाना चाहिए?मुझे स्पष्ट रूप से सामान्य पैरामीटर प्रकार क्यों प्रदान करना चाहिए जबकि संकलक को प्रकार का अनुमान लगाना चाहिए?
public static T2 Cast<T1,T2>(this T1 arg) where T2 : class where T1 : class
{
return arg as T2;
}
नमूना उपयोग:
objOfTypeT2 = objOfTypeT1.Cast<TypeT1,TypeT2>();
एक अधिक बुद्धिमान संकलक के साथ अपने वांछित उपयोग की तुलना में:
objOfTypeT2 = objOfTypeT1.Cast<TypeT2>();
या शायद मैं होना चाहिए अधिक बुद्धिमान :-)
सावधान रहें कि मैं साबित करता हूं वापसी प्रकार पर विचार करें। मैं उस वस्तु को प्रदान नहीं करना चाहता जिसे मैंने उस पर फ़ंक्शन कहा था, विधि एक्सटेंशन विधि है।
क्या सामान्य तरीके से (रों) कास्टिंग के साथ गलत क्या है? –
क्यों न सिर्फ सार्वजनिक स्थिर टी कास्ट (यह ऑब्जेक्ट वैल्यू) {वापसी मूल्य टी के रूप में;} क्यों नहीं? –
Rauhotz
@Rauhotz मैंने जो कुछ बताया है, बस जिज्ञासा और एक और अधिभार की तलाश में मुझे इसे मूल्य प्रकारों के साथ उपयोग करने में सक्षम बनाता है, क्योंकि मैं सामान्य बाधाओं के साथ अधिभार नहीं बना सकता। –