数组很简单,但是还是有很多注意点。
1.数组和容器(vector)的区别
-两者都是基本的低级复合类型
-只有在强调速度时才用数组和指针
-数组长度是固定的,但是容器可以通过push_Back在其中自动添加元素
2.数组定义和初始化
-非const变量以及要到运行阶段才知道的const变量都不能用于定义数组的维数
-在函数体外定义的内置数组,元素均被初始化为0
-在函数体内定义的内置数组,元素无初始化
-如果数组元素为类类型,则自动调用该类的默认构造函数进行初始化,如果没有默认的构造函数,则必须为该数组元素提供显式初始化
-字符串字面值包含一个额外的空字符用于结束字符串,例:
char ca[] = "C++". ca的长度为4.
-一些编译器允许将数组赋值作为编译器扩展,应该注意不同编译器下数组赋值的可能差别