所以我試圖學習C++,並且遇到了讓我感到困惑的東西。我的代碼,澄清C++中的參考文獻
int x = 0;
int &y = x;
cout << &x<< " " << x << " " << &y << " " <<y<< endl;
編譯沒有和結果:
0 003AFA08 0 003AFA08
我很難理解爲什麼X,int的轉換,& Y,A參考,不導致錯誤。起初,我認爲這是某種轉換,但是,
int &y = &x;
導致錯誤。
任何人都可以解釋爲什麼這種方式?提前致謝。
所以你想知道爲什麼流插入運算符'<<'可以將一個變量的地址作爲數字十六進制字符串進行字符串化,但是你不能分配一個'int'的地址(類型爲int *')到'int&'? – bobbymcr 2011-12-26 05:05:53
我猜這是'003AFA08 0 003AFA08 0' – onemach 2011-12-26 05:08:26