Array简单介绍
Array
- 1.简介
- 2.数组的定义和初始化
- 一维数组
- 3.array的方法
- 4.例子
1.简介
array是一个数组对象,里面包含了许多属性和方法。
array 容器以类模板的形式定义在 array 头文件,并位于命名空间 std
#include
namespace std{template <typename T, size_t N>class array;
}
2.数组的定义和初始化
一维数组
- 定义格式:
array<T,N> 数组名
//T 用于指明容器中的存储的具体数据类型,N 用于指明容器的大小
注:N必须是常量,不能是变量
eg:
array<double, 10> values;
创建好了一个名为 values 的 array 容器,其包含 10 个浮点型元素。但是array不会进行初始化,所以里面的值是随机的。
- 将所有的元素初始化为 0
array<double, 10> values {};
3.array的方法
| 成员函数 | 功能 |
|---|---|
| begin() | 返回指向容器中第一个元素的随机访问迭代器。 |
| end() | 返回指向容器最后一个元素之后一个位置的随机访问迭代器,通常和 begin() 结合使用 |
| rbegin() | 返回指向最后一个元素的随机访问迭代器。 |
| rend() | 返回指向第一个元素之前一个位置的随机访问迭代器。 |
| size() | 返回容器中当前元素的数量,其值始终等于初始化 array 类的第二个模板参数 N。 |
| max_size() | 返回容器可容纳元素的最大数量,其值始终等于初始化 array 类的第二个模板参数 N。 |
| empty() | 判断容器是否为空,和通过 size()==0 的判断条件功能相同,但其效率可能更快。 |
| at(n) | 返回容器中 n 位置处元素的引用,该函数自动检查 n 是否在有效的范围内,如果不是则抛出 out_of_range 异常。 |
| fill(val) | 将 val 这个值赋值给容器中的每个元素。 |
| front() | 返回容器中第一个元素的直接引用,该函数不适用于空的 array 容器。 |
| back() | 返回容器中最后一个元素的直接应用,该函数同样不适用于空的 array 容器。 |
| array1.swap(array2) | 交换 array1 和 array2 容器中的所有元素,但前提是它们具有相同的长度和类型 |
4.例子
#include
//需要引入 array 头文件
#include
using namespace std;
int main()
{array<int, 4> values{};//初始化 values 容器为 {0,1,2,3}for (int i = 0; i < values.size(); i++) {values.at(i) = i;}//使用 get() 重载函数输出指定位置元素cout << get<3>(values) << endl;//如果容器不为空,则输出容器中所有的元素if (!values.empty()) {for (auto val = values.begin(); val < values.end(); val++) {cout << *val << " ";}}
}
输出:
3
0 1 2 3
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
