Struktur vs. Kelas untuk Koleksi Objek Besar
Soalan:
Memandangkan penciptaan 100,000 objek kecil (2-3 sifat) disimpan dalam senarai untuk semakan nilai dan potensi kemas kini, adakah lebih cekap dan sesuai untuk menggunakan struct atau kelas?
Jawapan:
Pertimbangan Kelajuan:
The pilihan optimum bergantung pada keperluan khusus dan metrik prestasi. Ujian empirikal disyorkan untuk menentukan pendekatan yang lebih cepat. Struktur mungkin mengambil sedikit ruang timbunan tetapi mungkin lebih perlahan untuk disalin daripada rujukan.
Pertimbangan Reka Bentuk:
Sebagai garis panduan umum, pertimbangkan untuk menggunakan struct untuk objek yang:
Jika tidak, kelas adalah diutamakan.
Pemprosesan Kutipan Sampah:
Objek dihidupkan timbunan dan timbunan tidak diproses secara sama oleh pemungut sampah. Objek tindanan dianggap hidup secara lalai (akar koleksi), manakala objek timbunan mesti dirujuk oleh objek langsung untuk mengelakkan pengumpulan. Walau bagaimanapun, kedua-dua objek tindanan dan timbunan boleh merujuk kepada objek hidup yang lain, mempengaruhi penentuan set langsung.
Atas ialah kandungan terperinci Struktur atau Kelas: Mana Yang Lebih Baik untuk Mengurus 100,000 Objek Kecil?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!