C++的array数组容器详解
数组容器, 是存储数组的容器, 是C范例数组的扩充, 可以利用迭代器举办操纵;
譬喻"std::array<int, 5>", 需要留意的是, 假如直接举办赋值, "std::array<int, 5> ia = {1, 2, 3, 4, 5}; "
在GCC下会有告诫: "missing braces around initializer for ‘std::array<int, 5u>::value_type [5] {aka int [5]}’ [-Wmissing-braces]"
原因是与初始化数组的方法不符, 再加一组"{}"即可, 如: "std::array<int, 5> ia ={{1, 2, 3, 4, 5}};", 使参数满意int[5], 再举办赋值;
数组一般在初始化进程中赋值, 假如想替换已有的值, 一种要领是遍历所有的值, 较巨大;
另一种要领是通过复制去从头赋值, 实现快速赋值;
代码:
/* * test.cpp * * Created on: 2013.11.12 * Author: Caroline */ /*eclipse cdt; gcc 4.7.1*/ #include <iostream> #include <array> int main (void) { std::array<int, 5> ia = {{1, 2, 3, 4, 5}}; for(const auto i : ia) std::cout << i << " "; std::cout << std::endl; std::array<int, 5> ia2; // 空数组 //ia2 = {1, 2, 3, 4, 5}; //错误 ia2 = ia; for(const auto i : ia2) std::cout << i << " "; std::cout << std::endl; return 0; }
作者:csdn博客 Spike_King