Bagaimana untuk menambah elemen pada bekas C++ STL?

WBOY
Lepaskan: 2024-06-02 16:27:00
asal
756 orang telah melayarinya

Terdapat 2 cara untuk menambah elemen pada bekas STL: bekas menggunakan push_back dan emplace_back untuk menambah elemen, dan bekas bersekutu menggunakan sisip dan masukkan pasangan nilai kunci untuk memasukkan elemen.

如何向C++ STL容器中添加元素?

Bagaimana untuk menambah elemen dalam bekas C++ STL?

C++ Standard Template Library (STL) menyediakan kelas kontena yang berkuasa untuk menyimpan dan mengurus data. Menambah elemen pada bekas ini boleh dilakukan dalam pelbagai cara. Artikel ini akan memperkenalkan cara yang berbeza untuk menambah elemen menggunakan bekas STL dan memberikan contoh praktikal.

Jenis Bekas

STL menyediakan pelbagai jenis kontena, termasuk yang berikut:

  • Bekas: Contohnya, vektor dan list, iaitu disimpan secara berurutan elemen. vectorlist,它们按顺序存储元素。
  • 关联容器: 例如 mapset
Bekas bersekutu:

Seperti peta dan set, yang membolehkan mencari elemen berdasarkan nilai utama.

Kaedah untuk menambah elemen

Bekas

  • Kaedah untuk menambah elemen pada bekas termasuk:
  • push_back: Tambah elemen pada bekas
  • emplace_back: Cipta elemen baharu dalam bekas untuk mengelakkan penyalinan yang tidak perlu.
masukkan:

Masukkan elemen pada kedudukan tertentu.

Bekas Bersekutu

  • Kaedah untuk menambah elemen pada bekas bersekutu termasuk:
  • masukkan: Masukkan pasangan nilai kunci ke dalam bekas.
emplace:

Buat elemen baharu dan masukkan ke dalam bekas.

Kes praktikal

Tambahkan elemen pada vektor:

#include <vector>

int main() {
  // 创建一个 vector
  std::vector<int> numbers;

  // 使用 push_back 添加元素
  numbers.push_back(1);
  numbers.push_back(3);
  numbers.push_back(5);

  // 使用 emplace_back 添加元素
  numbers.emplace_back(7);

  // 打印 vector
  for (auto& number : numbers) {
    std::cout << number << " ";
  }

  return 0;
}
Salin selepas log masuk

🎜Tambahkan elemen pada peta: 🎜🎜
#include <map>

int main() {
  // 创建一个 map
  std::map<std::string, int> ages;

  // 使用 insert 添加元素
  ages["John"] = 25;
  ages["Mary"] = 30;

  // 使用 emplace 添加元素
  ages.emplace("Bob", 35);

  // 打印 map
  for (auto& [name, age] : ages) {
    std::cout << name << ": " << age << std::endl;
  }

  return 0;
}
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk menambah elemen pada bekas C++ STL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan