1、C++数组定义中的类型名可以是内置数据类型或类类型;除引用外,数组元素的类型还以可是任意的复合类型;没有所有元素都是引用的数组。
2、数组的维数必须用值大于等于一的常量表达式定义。此常量表达式只能包含整型字面值常量、枚举常量或用常量表达式初始化的×××const对象。非const变量以及要到运行阶段才知道其值的const变量都不能用于定义数组的维数。
例如,以下OK
const unsigned size1 = 512, size2 = 3;
char chaName[size1];
int strNum[size2 + 1];
以下NO
int size3 = 9;
const unsigned size4 = get_size();
3、数组的初始化
(1)显式初始化
char ch1[3] = {'a', 'b', 'c'};//3维
char ch2[] = "abc";//4维,空字符null,等价于,char ch2[] = {'a', 'b', 'c', '\0'};
int i[] = {1, 2, 3};
int j[3] = {1};//其余初始化为0,还区分函数体内和函数体外????????
4、
string 的下标类型 string::size_type;
数组的下标类型 size_t;
vector的下标类型 vector::size_type;
转载于:https://blog.51cto.com/9070303/1540482