引用的基本语法:**类型 &别名 = 原名**
别名与原名指向同一个地址。引用需要被初始化,并且不能被改变。
int a = 10;
//引用的基本语法,给a起一个别名b
int& b = a;
b = 20;
cout << a << endl; //打印结果20
引用可以等价地址传递,下面这段代码的打印结果是100
void val(int &v)
{
v = 100;
}
int main() {
int a = 10;
//引用的基本语法,给a起一个别名b
int& b = a;
val(b);
cout << a << endl; //打印结果100
}
**注:**局部变量不要作为函数返回值;
如果函数的返回值是引用,那么这个函数可以作为左值,代码如下:
int & val(int &v)
{
v = 100;
return v;
}
int main() {
int a = 10;
//引用的基本语法,给a起一个别名b
int& b = a;
val(b) = 50;
cout << a << endl; //打印结果100
}
注:引用的本质也是在使用指针,只不过是编译器帮我们做了。
const也可以修饰函数的形参,以防止误操作。
const int &ref=10;这么写,不会报错。
下面介绍一下new:
new:在堆区开辟一段内存;返回一个指针。
//new一段内存,存放数字28
int* p = new int(28);
cout << *p << endl;
//释放new的空间
delete p;
先到这,后面再写啦!