#include <iostream> #include <string> #include <array> using namespace std; // https://zh.cppreference.com/w/cpp/container/array int main() { ///array<int, 3> arr({ 1,2,3 }); // 非法 array<int, 3> arr1{ { 1,2,3 } }; // 不可以扩容,属于固定大小的数组。 array<int, 3> arr2 = { 1,2,3 }; array<std::string, 2> arr3 = {"aaa", "bbb"}; auto vBack = arr2.back(); auto bFront = arr2.front(); array<int, 0> arr4 = { 1 }; // 居然合法。结果是 arr4 size = 0,为空。 array<int, 0> arr5; ///auto vBack5 = arr5.back(); // back 和 front 操作不允许空array,所以执行前需要检查 ///auto bFront5 = arr5.front(); array<int, 3> arr6 = { 11,12,13}; arr6.swap(arr2); // swap, arr6 和 arr2 的大小必须一致。 // 填充数组 arr6.fill(152); }