C++笔记--Vector
Posted ljt2724960661
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++笔记--Vector相关的知识,希望对你有一定的参考价值。
这一节主要了解vector用法,向量(Vector)是一个封装了动态大小数组的顺序容器(Sequence Container)。跟任意其它类型容器一样,它能够存放各种类型的对象。可以简单的认为,向量是一个能够存放任意类型的动态数组。一般使用它时需要导入vector头文件,如下:
#include <vector>
std::vector<T> vector_name;
容器特性
1.顺序序列
顺序容器中的元素按照严格的线性顺序排序。可以通过元素在序列中的位置访问对应的元素。
2.动态数组
支持对序列中的任意元素进行快速直接访问,甚至可以通过指针算述进行该操作。提供了在序列末尾相对快速地添加/删除元素的操作。
3.能够感知内存分配器的(Allocator-aware)
容器使用一个内存分配器对象来动态地处理它的存储需求。
常见API:
栗子:
#include <iostream>
#include <vector>
using namespace std;
int main()
// 初始化
vector<int> vector1 = 1, 2, 3, 4, 5;
vector<int> vector26, 7, 8, 9, 10;
vector<int> vector3(5, 12);
cout << "vector1 = ";
for (const int& i : vector1)
cout << i << " ";
cout << "\\nvector2 = ";
for (const int& i : vector2)
cout << i << " ";
cout << "\\nvector3 = ";
// ranged loop
for (int i : vector3)
cout << i << " ";
// 添加元素
vector1.push_back(6);
vector1.push_back(7);
cout << "\\nUpdated vector1: ";
for (const int& i : vector1)
cout << i << " ";
//访问元素
cout << "Element at Index 2: " << vector1.at(2) << endl;
//改变元素
vector1.at(2) = 9;
cout << "Element changed at Index 2: " << vector1.at(2) << endl;
//删除最后一个元素
vector1.pop_back();
for (int i : vector1)
cout << "After delete Show Content : "<<i << "\\n ";
return 0;
输出:
vector1 = 1 2 3 4 5
vector2 = 6 7 8 9 10
vector3 = 12 12 12 12 12
Updated vector1: 1 2 3 4 5 6 7 Element at Index 2: 3
Element changed at Index 2: 9
After delete Show Content : 1
After delete Show Content : 2
After delete Show Content : 9
After delete Show Content : 4
After delete Show Content : 5
After delete Show Content : 6
以上是关于C++笔记--Vector的主要内容,如果未能解决你的问题,请参考以下文章