引用(基础)

📅 发布时间:2026/7/15 7:25:34 👁️ 浏览次数:
引用(基础)
引用的语法1.作用给一个变量起别名2.示例int a 10; int b a; //当对b进行修改时 b100; //相应的a也会修改引用的注意事项1.引用定义时必须进行初始化int a 10; //int c; 错误引用必须进行初始化 int c a; //正确2.引用一旦进行初始化就不在允许被修改。比如在上一个代码中c已经指向了a所指向的内存空间就不在允许c指向另一块空间引用做函数参数类似于指针通过一个交换的例子解释void myswap01(int *a,int *b) { int temp *a; *a *b; *b temp; } //传参时为 myswap01(a,b);而当为引用时void myswap02(a,b) { int temp a; a b; b temp; } //调用函数时 myswap02(a,b);引用作为函数的返回值引用在作为返回值时不可以返回局部变量的引用非法访问int test01() { int a 10; return a;//错误的在这里a为局部变量存放在栈区。函数执行完就会被释放。 static a 10;//但是当a变为静态变量时则没问题。存放在全局数据区。贯穿整个程序。 }引用的本质引用的本质是一个指针常量int a; int ref a; //上述代码会自动转化为 int* const ref a; ref 10; //上述代码会自动转化为 *ref10;这样我们就可以很自然的理解上述的注意事项2了。因为引用本质上就是一个指针常量指向不可改变但是可以修改指向空间的值常量引用int ref 10;//不符合引用的使用规则即引用需要指向一个合法的内存空间 //但是我们加上一个const就可以了 const int ref 10; //在这里是自动转化为int temp 10; const int ref temp; //即const int* const ref temp;//指向和数值都不允许修改。常用在函数的形参前加上const防止在函数中代码的恶意修改。