Cara Mengecilkan std::vector kepada Saiz Sebenarnya: Penjelasan Helah Swap

Barbara Streisand
Lepaskan: 2024-10-26 07:05:03
asal
419 orang telah melayarinya

How to Shrink a std::vector to its Actual Size: The Swap Trick Explained

Mengecilkan std::Vector: The Swap Trick

Untuk mengurangkan kapasiti std::vector apabila ruang yang dikhaskan tiada lebih lama diperlukan, "helah pertukaran" yang disyorkan oleh Scott Meyers dalam bukunya "STL Berkesan" boleh digunakan. Begini caranya:

  1. Buat vektor baharu dengan kapasiti yang diingini:
vector<Person> new_persons(size_of_new_vector);
Salin selepas log masuk
  1. Tukar kandungan daripada vektor asal dan baharu:
new_persons.swap(persons);
Salin selepas log masuk

Selepas melakukan pertukaran, vektor asal, orang, akan "mengecilkan untuk muat," bermakna ia hanya akan menduduki memori yang diperlukan untuk bilangan elemen yang dipegangnya pada masa ini.

Teknik ini memanfaatkan pembina salinan vektor, yang memperuntukkan memori hanya untuk elemen yang disalin, dengan berkesan mengurangkan kapasiti berlebihan vektor asal.

Atas ialah kandungan terperinci Cara Mengecilkan std::vector kepada Saiz Sebenarnya: Penjelasan Helah Swap. 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
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!