C++被称为C的超集。在C++中有很多声明和C相似,比如:
*:
C: int *p;
C++: int* p;
读法:p 是一个指向整数类型的指针变量
C: x = *p;
读法:把指针p指向的值赋值给x
&:
C:x = a & b; # C中为逻辑与
C++:
1.引用
int i = 3;
int &r = i; # C++中为引用变量(引用),本质是指针的另一个名字。r就是引用变量
2.取地址
string *p = &r;
&&:
C:逻辑与
C++: 右值引用
// 左值引用
int i = 10;
int &b = i; # 正确
int &b = 10; # 错误
int i = 10;
const &b = i; # 正确
const &b = 10; # 正确
// 右值引用
int i = 10;
int &&b = 10; # 正确
int &&b = i; # 错误,右值引用不能初始化为左值