में covariance सी # 4.0 में List<Subclass>
से List<Superclass>
डालना संभव है?C#
इन पंक्तियों के साथ कुछ:
class joe : human {}
List<joe> joes = GetJoes();
List<human> humanJoes = joes;
यह है कि क्या सहप्रसरण के लिए है नहीं है?
आप कर सकते हैं यदि:
human h = joe1 as human;
क्यों नहीं आप की तुलना में यह (जो) मनुष्यों [0] क्योंकि ऐसा करने के लिए कानूनी नहीं होगा
List<human> humans = joes as List<human>;
ऐसा करने में सक्षम होना चाहिए वस्तु को नीचे गिरा दिया गया है .. और हर कोई खुश होगा। अब एकमात्र विकल्प एक नई सूची बनाना है
यह मूलतः एक ही रूप में [सी # में, क्यों एक सूची वस्तु एक सूची
क्योंकि 'इंसान' तब 'सूची' के उदाहरण का जिक्र करेंगे, जो @ जॉन के उदाहरण में दिखाए गए समस्याओं का कारण बनेंगे। –
हाँ, उदाहरण को सही करने के बाद मुझे यह मिला .. समझ में आता है –