Rumah >pembangunan bahagian belakang >C++ >Sekiranya anda mewarisi dari senarai?
Kelemahan warisan
List<T>
Walaupun diwarisi seolah -olah mudah, ada beberapa masalah dalam berbuat demikian:
dari segi prestasi List<T>
Selepas banyak pengoptimuman untuk meningkatkan kelajuan. Warisan akan memusnahkan pengoptimuman ini, yang mungkin menyebabkan penurunan prestasi. sekatan kawalan
List<T>
adalah kelas yang disediakan oleh Microsoft, anda tidak boleh mengawalnya secara langsung. Jika lapisan bawah melaksanakan perubahan yang tidak dijangka, ia boleh membawa kepada isu keserasian masa depan.
Pendedahan dalaman
warisan dari secara tidak sengaja mendedahkan pelaksanaan dalamannya. Ini bergantung kepada butiran perubahan yang mungkin berlaku pada versi masa depan, yang akan membawa kepada masalah penyelenggaraan yang berpotensi.
List<T>
alternatif List<T>
Gunakan kelas
List<T>
Encapsulation
Collection<T>
dibungkus dalam kelas tersuai boleh memberikan pemisahan logik antara senarai dan atribut tambahannya. Walau bagaimanapun, ini akan meningkatkan redundansi kod dan mungkin perlu mengemukakan kaedah untuk indeks dan menetapkan operasi. Reka bentuk struktur data tersuai Collection<T>
List<T>
Faktor Keputusan
List<T>
: Adakah anda perlu mengawal pelaksanaan dan memastikan keserasian masa depan?
Kerumitan fungsi yang diperlukan : Adakah fungsi yang diperlukan cukup rumit untuk menyesuaikan struktur data?
Atas ialah kandungan terperinci Sekiranya anda mewarisi dari senarai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!