Rumah > pembangunan bahagian belakang > C++ > Bekas Perpustakaan Standard C 11 yang manakah Perlu Saya Gunakan?

Bekas Perpustakaan Standard C 11 yang manakah Perlu Saya Gunakan?

Susan Sarandon
Lepaskan: 2024-12-06 05:50:15
asal
328 orang telah melayarinya

Which C  11 Standard Library Container Should I Use?

Memilih Bekas Perpustakaan Standard C 11 Optimum

Helaian helaian "C Container Choice" klasik menyediakan panduan untuk memilih bekas yang sesuai untuk senario penggunaan tertentu. Walau bagaimanapun, ia tidak mempunyai versi yang dikemas kini untuk C 11.

Untuk mengimbangi, berikut ialah aliran kerja teks untuk membantu dalam pemilihan kontena:

1. Semantik Didahulukan

Bekas Bersekutu:

  • Gunakan Bekas Bersekutu jika anda memerlukan carian menggunakan satu kekunci.
  • Pilih Bekas Tersusun untuk diselenggarakan elemen.
  • Untuk pasangan nilai kunci yang berasingan, gunakan Peta; untuk kekunci sahaja, pertimbangkan Set.
  • Dayakan pendua dengan awalan "berbilang".

Bekas Jujukan Mudah:

  • Pilih bekas yang sesuai berdasarkan kriteria berikut:

2. Kestabilan Memori

  • Gunakan Senarai jika elemen mesti kekal dalam ingatan semasa pengubahsuaian bekas.
  • Lalai ke Senarai; gunakan Forward_List sahaja untuk mengurangkan jejak memori.

3. Saiz Dinamik

  • Gunakan Tatasusunan jika saiz diketahui pada masa penyusunan dan kekal malar, dan unsur boleh dibina secara lalai atau dimulakan menggunakan pendakap kerinting.

4. Berakhir Berdua

  • Pilih Deque jika anda perlu menambah atau mengalih keluar item daripada kedua-dua hujung.
  • Pilih Vektor sebaliknya.

Contoh

Senario: Mendapatkan semula data orang berdasarkan unik ID.

  • Kami memerlukan kefungsian cari (Bekas Bersekutu).
  • Pesanan tidak berkaitan (Tidak Tersusun).
  • Kunci (ID) diasingkan daripada nilai (Peta) .
  • Tiada pendua (no "berbilang").

Keputusan: std::unordered_map.

Nota: Jika tiada kekangan khusus gunakan, Vektor disyorkan sebagai pilihan lalai untuk bekas jujukan mudah.

Atas ialah kandungan terperinci Bekas Perpustakaan Standard C 11 yang manakah Perlu Saya Gunakan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan