基本概念
std::vector是一种动态封装数组的顺序容器。也就是数组。封装之后安全性更高,但是相对传统数组,内存消耗更多,执行效率更低。
语法
定义
std::vector<数据类型 >变量名(容器个数, 初始化的值);
常见的函数
函数名 | 功能 |
---|---|
clear | 删除所有元素,同时释放内存 |
size | 求容器的元素个数 |
push_back | 向容器尾部追加数据 |
empty | 判断数组是否为空 |
assign | 将数据赋值给容器 |
示例代码
#include <iostream>
#include <vector>
int main(void)
{
int userId;
//定义一个int类型的数组,名字叫做studentId,同时初始化
std::vector<int>studentId(5, 500);
std::cout << studentId.size() << std::endl;
std::cout << studentId[2] << std::endl;
for (int x : studentId)
{
std::cout << x << std::endl;
}
//将studentId清空
studentId.clear();
for (int x : studentId)
{
std::cout << x << std::endl;
}
studentId.push_back(9600); //向studentId
for (int x : studentId)
{
std::cout << x << std::endl;
}
//将studentId清空
studentId.clear();
do
{
std::cout << "请输入学号:";
std::cin >> userId;
if (userId == 0)
{
break;
}
studentId.push_back(userId);
} while (true);
if (!studentId.empty())
{
for (int x : studentId)
{
std::cout << x << std::endl;
}
}
studentId.assign(5, 100);
if (!studentId.empty())
{
for (int x : studentId)
{
std::cout << x << std::endl;
}
}
}