【STL】C++ STL之array详解
返回STL主目录
1️⃣介绍1️⃣
头文件
#include<array>
array
是C++11新增的容器,效率与普通数据相差无几,比vector
效率要高,自身添加了一些成员函数。
和其它容器不同,array 容器的大小是固定的,无法动态的扩展或收缩,只允许访问或者替换存储的元素。
注意:
array
的使用要在std
命名空间里
2️⃣简实使用2️⃣
1.声明与初始化
1.1.基础数据类型
声明一个大小为100的int
型数组,元素的值不确定
array<int, 100> a;
声明一个大小为100的int
型数组,初始值均为0
(初始值与默认元素类型等效)
array<int, 100> a{};
声明一个大小为100的int
型数组,初始化部分值,其余全部为0
array<int, 100> a{1, 2, 3};
或者可以用等号
array<int, 100> a = {1, 2, 3};
1.2.高级数据类型
不同于数组的是对元素类型不做要求,可以套结构体
array<string, 2> s = {"ha", string("haha")};
array<node, 2> a;
2. 取存元素值
⭐️修改元素
array<int, 4> a = {1, 2, 3, 4};
a[0] = 4;
⭐️访问元素
⭐️⭐️下标访问
array<int, 4> a = {1, 2, 3, 4};
for(int i = 0; i < 4; i++) cout << a[i] << " \n"[i == 3];
⭐️⭐️利用auto
访问
for(auto i : a)cout << i << " ";
⭐️⭐️迭代器访问
auto it = a.begin();
for(; it != a.end(); it++) cout << *it << " ";
⭐️⭐️ at()
函数访问
下标为1
的元素加上下标为2
的元素,答案为5
array<int, 4> a = {1, 2, 3, 4};
int res = a.at(1) + a.at(2);
cout << res << "\n";
⭐️⭐️ get
方法访问
将a
数组下标为1
位置处的值改为x
【STL】C++ STL之array详解相关推荐
- C++STL笔记(三):array详解
array结构 一.array的构造函数和析构函数 二.Class array< >的非更易型操作 三.array的赋值操作 四.Class array< >元素直接访问 五. ...
- STL 中map的用法详解
STL 中map的用法详解 Map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可 ...
- C++ STL容器 —— map/multimap 用法详解
C++ STL容器 -- map/multimap 用法详解 写在前面:近期正在学习C++的STL容器,因此在这里做一下日志记录,主要介绍一些容器基本成员函数的用法, 配上实际用例,并不涉及原理.但别 ...
- C++ STL【常用算法】详解
大家好,欢迎来到STL[常用算法]详解模块,本文将对STL中常见但又高频的算法进行一个详细又简单的入门级教学
- Numpy.array()详解 、np.array与np.asarray辨析、 np.array和np.ndarry的区别
记录一下numpy.array()的详细用法,以及与np.asarray()和np.ndarray()的区别. 目录 1. Numpy.array()详解 1.1 函数形式 1.2 参数详解 1.3 ...
- Numpy.array()详解
1. Numpy.array()详解 该函数的作用一言蔽之就是用来产生数组. 1.1 函数形式 numpy.array(object, dtype=None, copy=True, order='K' ...
- 【c++】22. STL容器的底层实现详解
文章目录 顺序容器 vector(向量容器) deque(双端队列) list 关联容器 set(集合) multiset map(key,value) multimap 顺序容器 vector(向量 ...
- auto与迭代器的用法_C++ STL move_iterator移动迭代器用法详解
C++ 11 还为 STL 标准库增添了一种迭代器适配器,即本节要讲的 move_iterator 移动迭代器适配器. move_iterator 迭代器适配器,又可简称为移动迭代器,其可以实现以移动 ...
- STL中的map简单详解
std map是STL的一个关联容器,它提供一对一(其中第一个可以称为关键字,每个关键字只能在map中出现一次,第二个可能称为该关键字的值)的数据处理能力,由于这个特性,它完成有可能在我们处理一对一数 ...
最新文章
- 【mysql】SQL常用指令
- openStack使用宿主机监控
- 机械制造技术学习笔记(七)
- boost::integer::extended_euclidean用法的测试程序
- 建筑师 第一类斯特林数
- Enterprise Library系列文章目录
- Oracle存储过程基本语法
- minhash算法 java_minhash算法
- 雅虎JavaScript架构师:网页开发技术安全优先
- JAVA基础——Java 中必须了解的常用类
- 赤兔AVI视频恢复软件找回永久删除的avi视频
- 『GoLang』错误处理
- 读《春秋》有感之十三:墙头草的生存技巧
- 如何用Python快速计算股票的Beta系数并排序存入Excel表中
- 流水线效率的计算公式计算机,[转载]生产效率计算公式
- linux 主机管理平台,Linux虚拟主机管理系统directadmin使用中文教程
- RoboCup仿真3D底层通信模块介绍(一)
- 微信公众号抓取 操作手机相关操作 ②
- python判断性别的源代码_python 通过手机号识别出对应的微信性别(实例代码)
- 解释BIOS及BSP