我是靠谱客的博主 爱笑金鱼,这篇文章主要介绍C++编程小知识(4)数组的替代品模板类vector模板类array,现在分享给大家,希望可以做个参考。

模板类vector

模板类vector类似于string类,也是一种动态数组。

可以在运行阶段设置vector对象的长度,可以在末尾附加新数据,还可以在中间插入新数据。

要使用vector对象,必须包含头文件vector,vector包含在名称空间std中。

如下示例:

#include <vector>
...
using namespace std;
vector<int> vi; //vi是一个有0个 int 元素的 vector对象
int n ;
cin>> n;
vector<double> vd(n);//vd是有n 个double元素的 vector对象

模板类array

vector 类的功能比数组强大,但代价是效率稍低。

如果需要的是长度固定的数组,使用数组是最佳的选择,但代价是不那么方便和安全。

因此,c++11新增了模板类array,array对象的长度也是固定的,也使用栈(静态内存分配)而不是自由存储区,因此效率与数组相同,但更加安全方便。

实例如下:

#include <array>
...
using namespace std;
array<int,5> ai;
//创建有5个int元素的ai 数组
array<double,4> ad={1.1,1.2, 1.3, 1.4};

与创建vector 对象不同的是,如上所示,以上元素数(4,5)必须是常量

== 可以将一个array对象赋值给另外一个array对象==

最后

以上就是爱笑金鱼最近收集整理的关于C++编程小知识(4)数组的替代品模板类vector模板类array的全部内容,更多相关C++编程小知识(4)数组内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(131)

评论列表共有 0 条评论

立即
投稿
返回
顶部