02 C++ 的引用
来源:互联网 发布:app程序员招聘要求 编辑:程序博客网 时间:2024/05/18 20:52
很多开发人员选择使用java就是避免C/C++的指针.
而C++里的引用类型就是把C里的指针操作封装起来,避免直接操作内存地址,降低发生地址访问越界的问题.
声明引用类型的变量: 类型&变量名=要引用的变量名
注意引用变量在声明时必须要初始化,也就是要指定引用的变量.我们只要像操作一般的变量来操作引用变量即可。
代码:
12 #include<iostream>34 int main(void)5 {6 usingnamespace std;7 int & p;8 return 0;9 }
如上面代码没有初始化引用变量,则编译时发生错误:
[root@localhost02quote]# g++ 01test.cpp
01test.cpp: Infunction ‘int main()’:
01test.cpp:7:8:error: ‘p’ declared as reference but not initialized
int & p;
^
引用变量初始化指定引用变量后,无法再指定引用另一变量.
代码:
12 #include<iostream>34 int main(void)5 {6 usingnamespace std;7 int num =77;8 int num2 =88;910 int & p= num;1112 p = num2;13 cout <<p << endl;14 cout <<num << endl;15 return 0;16 }
这代码看上去,“p = num2”是指定引用另一个变量,实际根本不是。
当p初始化指定引用num变量后, 写p相当于写num,“p = num2”相当于”num= num2”
引用变量作函数的参数使用
通过引用变量参数改变变量num的值
123 #include <iostream>45 void func(int & p);6 int main(void)7 {8 using namespace std;910 int num = 88;1112 func(num);13 cout << num << endl;14 return 0;15 }1617 void func(int & p)18 {19 p = 11;20 }
注意引用变量p是局部变量,在func函数执行才会发配空间,也就是在函数执行时才会初始化”int& p = num”在面试题里,C/C++的题里出现函数参数是引用变量时,需注意不是取地址的参数调用参数为引用变量的函数时,我们只需提供变量,同时需注意函数有可能改变量里的值.
0 0
- C++“引用”的理解
- [C++] 引用和指向指针的引用
- 关于C++引用C,C引用C++,extern的使用
- 引用 Invoke的用法(C#)
- [C] 指针参数的引用
- c/c++指针的引用
- c的指针*和引用&
- 【C++】指针&引用的区别
- [C/C++]数组的引用、多维数组
- 引用的本质是什么(c++,c#,java)?
- 【C/C++】引用和指针的区别
- 【C/C++】指针与引用的区别
- [C++]关于数组的引用和引用的数组
- C变量的直接引用与间接引用区别
- 引用-利用引用交换两个变量的值【C++】
- 引用(c++)
- C++----引用
- c++-引用
- 软件开发项目影响进度因素及控制浅谈
- 详解spring事务属性
- 网络负载均衡详解
- CSS 动画:animation和transition
- java POI 下拉选的实现
- 02 C++ 的引用
- 数据库抽象层PDO
- C/S和B/S两种架构区别与优缺点分析
- mongoDB 全文搜索 TextSearch
- Java并发容器和框架
- 剑指offer-- 反转链表
- 面试总结
- cmdline常用参数
- 两个例子(来自Storm实战 构建大数据实时计算)