Pertanyaan yang diberi tag «contravariance»

4
Mengapa kovarians dan contravariance tidak mendukung tipe nilai
IEnumerable<T>adalah co-varian tetapi tidak mendukung tipe nilai, hanya tipe referensi saja. Kode sederhana di bawah ini berhasil dikompilasi: IEnumerable<string> strList = new List<string>(); IEnumerable<object> objList = strList; Tetapi mengubah dari stringmenjadi intakan mendapatkan kesalahan yang dikompilasi: IEnumerable<int> intList = new List<int>(); IEnumerable<object> objList = intList; Alasannya dijelaskan dalam MSDN : …


4
Mengapa contoh tidak mengkompilasi, alias bagaimana varians (co, kontra, dan in-) bekerja?
Sebagai lanjutan dari pertanyaan ini , dapatkah seseorang menjelaskan yang berikut di Scala: class Slot[+T] (var some: T) { // DOES NOT COMPILE // "COVARIANT parameter in CONTRAVARIANT position" } Saya memahami perbedaan antara +Tdan Tdalam deklarasi tipe (ini mengkompilasi jika saya menggunakan T). Tetapi kemudian bagaimana seseorang benar-benar menulis …

2
Masalah pemahaman kontradiksi kovarian dengan obat generik di C #
Saya tidak mengerti mengapa kode C # berikut tidak dapat dikompilasi. Seperti yang Anda lihat, saya memiliki metode generik statis Sesuatu dengan IEnumerable<T>parameter (dan Tdibatasi menjadi IAantarmuka), dan parameter ini tidak dapat dikonversi secara implisit IEnumerable<IA>. Apa penjelasannya? (Saya tidak mencari solusi, hanya untuk memahami mengapa itu tidak berhasil). public …


2
Bagaimana Generic Covariance & Contra-variance Diimplementasikan dalam C # 4.0?
Saya tidak menghadiri PDC 2008, tetapi saya mendengar beberapa berita bahwa C # 4.0 diumumkan untuk mendukung kovarians Generik dan kontra-varian. Artinya, List<string>bisa ditugaskan ke List<object>. Bagaimana bisa? Dalam buku Jon Skeet C # in Depth , dijelaskan mengapa C # generik tidak mendukung kovariansi dan kontra-varian. Ini terutama untuk …


2
Memahami antarmuka Kovarian dan Kontravarian di C #
Saya telah menemukan ini di buku teks yang saya baca di C #, tetapi saya mengalami kesulitan untuk memahaminya, mungkin karena kurangnya konteks. Apakah ada penjelasan singkat yang bagus tentang apa itu dan apa gunanya di luar sana? Edit untuk klarifikasi: Antarmuka kovarian: interface IBibble<out T> . . Antarmuka kontravarian: …
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.