1.什么是array数组
array
是封装固定大小数组的容器,相当于 T [N]。该结构体结合了 C 风格数组的性能、可访问性与容器的优点,比如可获取大小、支持赋值、随机访问迭代器等。是一个静态数组。
2.为什么要使用array数组
众所周知,C++申请空间时所消耗的时间基本不受申请空间大小的影响,而受申请次数的影响。所以使用array静态数组替代vector set等动态数组能很好的节约时间,同时array相比于C数组,他封装了许多C++容器特点,支持可获取大小、支持赋值、随机访问迭代器等。
注意,该容器定义在<array>库里,使用之前需要先调用
3.array定义
array<T, N> arr;构造了一个T类型的N个元素的arr,类似 T arr[N];
需要注意的是,array默认构造元素是非空的,类似在函数里定义一个数组,内部储存随机值
实例:
1.
array<int, 3> a1{ {1, 2, 3} };
定义一个int类型的数组a1,可能有人注意到此处用到两个花括号,这是在C++11前的要求,在CWG 1270 重申后的 C++11和 C++14 起不要求
2.
array<int, 3> a2 {1, 2, 3} ;
这就是C++11后的版本,同上
3.