陣列維度
首先,陣列是一種符合型別,宣告如a[d],d是維度,維度必須是是乙個常量表示式。
int a = ;
int i = 1;
a[i] = 2;//錯誤,因為i是變數;
constexpr size_t i = 1;
a[i] = 2;//正確,i是常量
begin和end在陣列中的使用
陣列和vector類似,都有begin和end的操作,不同的是begin和end是vector中的成 員,而在陣列中卻不是。
/*int ia = ;
int*beg = begin(ia);
int*last = end(ia);
cout << last - beg << endl;*/
陣列對vector的賦值
不允許乙個陣列為另乙個內建型別的陣列賦初值,也不允許使用vector物件初始化陣列。相反,允許使用陣列來初始化vector物件。要實現這一目的,只需指明要拷貝區域的首元素位址和尾後位址即可。如下:
/*int int_arr = ;
vector ivec( begin(int_arr),end(int_arr) );
for (auto i : ivec)22:37
cout << i << " ";
cout << endl;*/
多維陣列中使用範圍for迴圈
多維陣列中使用範圍for迴圈需要注意的是,除了最內層迴圈外,其他所有迴圈控制的控制變數應該是引用型別,這時為了避免陣列自動轉換為指標。如下:
/*int ia[3][4] = ,
, };
size_t cnt = 0;
for (auto &row : ia)
for (auto col : row) */
指標陣列和陣列的指標
int *p
[10];//為含有10個指標的陣列
int (*p)[10];//為指向含有10個元素陣列的指標
陣列的引用
int (&p)[10];//p為含有10個元素陣列的引用
需要注意的是,陣列中的元素必須是物件,所以不存在引用陣列。這一點和vector相同。 C 中的陣列和C 中陣列的區別
c 中陣列是引用型別,c 定義整型陣列方式是 int intarray 或int intarray new int 10 而c 中定義整型陣列的方式是 int intarray 或int intarray new int 10 c 中的陣列可以是一維的也可以是多維的,同樣也支援矩陣和參差不齊的陣列。...
C 中的陣列和C 中陣列的區別
c 中陣列是引用型別,c 定義整型陣列方式是 int intarray 或int intarray new int 而c 中定義整型陣列的方式是 int intarray 或int intarray new int c 中的陣列可以是一維的也可以是多維的,同樣也支援矩陣和參差不齊的陣列。注意 定義多...
c 中的陣列
array是所有陣列的基類。所以用普通方法建立的陣列可以使用array建立的陣列例項上的所有方法和屬性。建立 陣列的length可以用變數賦值,但是在賦值之前這個變數必須初始化。一維 int arr new int length array arr array.createinstance type...