基本概念
C++ 是 C 語(yǔ)言的超集躏哩。
C++ 有一種C 語(yǔ)言不存在的變量類型 --- 引用變量(簡(jiǎn)成引用)。
- 指針是存地址的變量,可以指向內(nèi)存地址愧旦。
& 應(yīng)用變量:本質(zhì)上是指針的別名(但不能被編譯器實(shí)例化)
2. 基本示例 *
int main() {
int a = 1;
int *b = &a;
cout << "a: " << a << endl;
cout << "b: " << b << endl;
*b = 100;
cout << "&a: " << &a << endl;
cout << "b: " << b << endl;
cout << "a: " << a << endl;
return 0;
}
b是a的指針,指向a的地址埠胖。*b 的改變糠溜,就是a的改變。
輸出結(jié)果為:
a: 1
b: 0x7ffee3ffa898
&a: 0x7ffee3ffa898
b: 0x7ffee3ffa898
a: 100
3. 基本示例 &
int main() {
int a = 1;
int &b = a;
int c = a;
cout << "a:" << a << endl;
cout << "b:" << b << endl;
cout << "c:" << c << endl;
b = 100;
cout << "a:" << a << endl;
cout << "b:" << b << endl;
cout << "c:" << c << endl;
cout << "&a:" << &a << endl;
cout << "&b:" << &b << endl;
cout << "&c:" << &c << endl;
return 0;
}
& 引用 相當(dāng)于 別名直撤。 b 值改動(dòng)了非竿,就是a 改動(dòng)。
輸出結(jié)果為:
a:1
b:1
c:1
a:100
b:100
c:1
&a:0x7ffeee126858
&b:0x7ffeee126858
&c:0x7ffeee12684c