cari
  • Log masuk
  • Daftar
Penetapan semula kata laluan berjaya

Ikuti proiects vou berminat dengan andi aet terbaru mengenai mereka

Tutorial C++ STL

Koleksi 154
Baca 53378
masa kemas kini 2016-09-11

Dalam bab sebelum ini, kami telah mempelajari konsep templat C++. C++ STL (Perpustakaan Templat Standard) ialah satu set kelas templat C++ yang berkuasa yang menyediakan kelas dan fungsi templat biasa ini dan fungsi templat ini boleh melaksanakan pelbagai algoritma dan struktur data yang popular dan biasa digunakan, seperti vektor, senarai terpaut dan. beratur.

Inti Perpustakaan Templat Standard C++ merangkumi tiga komponen berikut:

组件描述
容器(Containers)容器是用来管理某一类对象的集合。C++ 提供了各种不同类型的容器,比如 deque、list、vector、map 等。
算法(Algorithms)算法作用于容器。它们提供了执行各种操作的方式,包括对容器内容执行初始化、排序、搜索和转换等操作。
迭代器(iterators)迭代器用于遍历对象集合的元素。这些集合可能是容器,也可能是容器的子集。

Ketiga-tiga komponen ini semuanya datang dengan fungsi pratakrif yang kaya untuk membantu kami mengendalikan tugas yang rumit dengan cara yang mudah.

Atur cara berikut menunjukkan bekas vektor (templat standard C++), yang hampir sama dengan tatasusunan Satu-satunya perbezaan ialah vektor secara automatik mengendalikan keperluan storan sendiri apabila ia perlu dikembangkan:

#include <iostream>
#include <vector>
using namespace std;
 
int main()
{
   // 创建一个向量存储 int
   vector<int> vec; 
   int i;

   // 显示 vec 的原始大小
   cout << "vector size = " << vec.size() << endl;

   // 推入 5 个值到向量中
   for(i = 0; i < 5; i++){
      vec.push_back(i);
   }

   // 显示 vec 扩展后的大小
   cout << "extended vector size = " << vec.size() << endl;

   // 访问向量中的 5 个值
   for(i = 0; i < 5; i++){
      cout << "value of vec [" << i << "] = " << vec[i] << endl;
   }

   // 使用迭代器 iterator 访问值
   vector<int>::iterator v = vec.begin();
   while( v != vec.end()) {
      cout << "value of v = " << *v << endl;
      v++;
   }

   return 0;
}

Apabila kod di atas disusun dan dilaksanakan, ia akan menghasilkan keputusan berikut:

vector size = 0
extended vector size = 5
value of vec [0] = 0
value of vec [1] = 1
value of vec [2] = 2
value of vec [3] = 3
value of vec [4] = 4
value of v = 0
value of v = 1
value of v = 2
value of v = 3
value of v = 4

Terdapat beberapa perkara yang perlu diberi perhatian tentang pelbagai fungsi yang digunakan dalam contoh di atas:

< The 🎜>
  • fungsi ahli push_back( ) memasukkan nilai pada penghujung vektor, memanjangkan saiz vektor jika perlu.

  • fungsi saiz( ) memaparkan saiz vektor.

  • fungsi begin( ) mengembalikan iterator yang menunjuk ke permulaan vektor.

  • fungsi end( ) mengembalikan iterator yang menunjuk ke hujung vektor.

Alat AI Hot
Undress AI Tool
Undress AI Tool

Gambar buka pakaian secara percuma

AI Clothes Remover
AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undresser.AI Undress
Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

Stock Market GPT
Stock Market GPT

Penyelidikan pelaburan dikuasakan AI untuk keputusan yang lebih bijak

Alat popular
Notepad++7.3.1
Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac
SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)