C++的指针和引用
来源:互联网 发布:python 分词 相似度 编辑:程序博客网 时间:2024/06/05 08:24
C++的指针和引用
int *p;
int &q = p;
定义
指针存放变量地址,各类型指针大小都为4个字节,在sizeof判断大小时容易错写误判
引用是一个指针的别名
指针和引用的差别
1.引用非空,因为引用声明时必须初始化,同时也意味着不用做类型检查
2.引用不可修改指向其它内存
使用和注意事项
1.函数的参数传递尽量使用引用,因为引用可对指向内容进行改变,但是不用往栈中添加副本从而减小开销
2.重写操作符operate=,operate<<,operate>>时,如果要支持a=b=c,a>>b>>c之类的连等连赋值效果,请对对应结果值使用引用
3.动态内存传递场景必须使用指向指针的指针
4.一个指向数组的指针的具体指向是数组的首地址
5.指针可以和数字加减操作,效果是当前指向地址前后(-+)移动n乘以指针指向类型的地址距离
6.指针分配内存操作new,molloc之后,不使用时必须delete或free释放,数组指针释放时采用delete []的方式
7.指针如果为局部变量最好在作用域结束前释放,如果类的成员变量最好在析构函数中释放
8.在释放指针后,最好是把指针置为NULL,不然会产生迷途指针或者叫悬浮指针,因为delete只会让编译器把指针指向的内存释放,之后指针依然存在,并且会指向一个不确定的非法位置
9.如果指针变量跨作用域、调用复杂或释放内存代码区域有异常风险最好使用智能指针
阅读全文
0 0
- c的指针*和引用&
- [C++] 引用和指向指针的引用
- 【C/C++】引用和指针的区别
- 详解c++[指针的指针] 和 [指针的引用]
- c++:引用和指针
- [C++]指针和引用的比较小结
- c++和c的指针及引用
- 指针和引用的区别(C++)
- C程序设计语言--指针和引用的区别
- 【C++】指针和引用的差别
- c的指针和php中的引用
- 引用和指针的区别C/C++
- C语言的指针*和引用&
- [C++]指针和引用的区别
- C++:指针和引用的区别
- C/C++的传指针和引用
- c指针和c++引用
- c/c++ 引用和指针
- 游戏开发中的观察者模式
- Java选择结构与循环结构
- Java向下转型的意义
- Java EE上路之安装JDK
- 求Sn=a+aa+aaa+aaaa+aaaaa的前5项之和,其中a是一个数字,例如:2+22+222+2222+22222
- C++的指针和引用
- Android String subString用法
- 简便快捷二维码扫描,生成二维码,
- ROC与AUC曲线
- 2016年第七届蓝桥杯C/C++A组第三题---方格填数
- JQuery 实现AJAX异步请求 的基本用法
- 关于重新安装Tomcat的问题
- 同余定理
- python下如何在目录下让Python文件去调用另一个Python文件内的函数或类