1.再一次加強對int * a[] 和int (* a)[]的理解與溫習,多次之後便能夠理解指針的奧妙。
2.看指針表達式時依據從右到左看或者從內到外依據運算符[]>*的優先級會很清晰。
3.利用&a[a.size]可以獲得數組的尾後元素指針,但是此位置並不在數組內,因此不可以對其進行街引用或者其他相關操作。
4.C++中沒有多維數組,其實是數組的數組。如:
int a[2][3]={{1,2,3},
{2,3,4}};//a爲大小爲2的數組,每個元素是包含3個整數的數組。
5.如果表達式含有的下標和數組的維數一樣多,則返回的是數組的元素,否則返回的是給定索引處的一個內層數組。
6.定義變量時,如果是內置類型如int等在函數外定義會自動初始化爲0,在函數內(包括main函數)定義則不會初始化。如下代碼:
string s;
int a;
int _tmain(int argc, _TCHAR* argv[])
{
string s1;
int a1;
// cout<<a1<<endl; //錯誤,輸出未初始化的變量used
cout<<a<<endl; //正確,輸出0
cout<<s<<endl; //正確,爲空
cout<<s1<<endl; //正確,雖然在函數體內,但是string不是內置類型,所以仍然可以正確運行,即仍初始化爲空。
while(1);
return 0;
}