指针的引用
来源:互联网 发布:软件系统集成设计方案 编辑:程序博客网 时间:2024/05/01 04:40
为什么会有指针的引用呢?我们假设这样一个问题,如果一个函数的参数是一个指针,而我在该函数中修改了该指针指向的内容,这会发生什么呢?如下所示:
void my_func(int *p){ int m = 10; p = &m;}int main(int argc, char** argv){ int n = 2; int *pn = &n; std::cout<<*pn<<std::endl; my_func(pn); std::cout<<*pn<<std::endl; return 0;}结果为2和2
为什么会这样呢?这是因为在函数my_func()中,p=&m,只是修改了传入指针的副本,实际上p指向的内容并没有发生改变。而如果我们不是将指针传进去,而是将指针的引用传进去,结果就会和上面不一样。
void my_func(int *&p){ int m = 10; p = &m;}int main(int argc, char** argv){ int n = 2; int *pn = &n; std::cout<<*pn<<std::endl; my_func(pn); std::cout<<*pn<<std::endl; return 0;}结果就为2和10。
为什么会这样呢?因为引用就是某一个变量的别名,对引用的操作与对变量直接操作是完全一样的。
0 0
- 指针、指针的引用
- 引用、指针的指针、指针的引用
- 指针 指针的引用 指针的指针
- C++中引用,指针,指针的引用,指针的指针
- C++中引用,指针,指针的引用,指针的指针
- 指针*、引用&、地址&、指针的引用*&、指针的指针**
- 指针与指针的引用
- 指针和指针的引用
- 指针与指针的引用
- 指针与指针的引用-
- 指针和指针的引用
- 指针与指针的引用
- 指针,和指针的引用
- 指针和指针的引用
- 指针的指针,指针的引用
- 指针的指针还是指针的引用
- 指针的指针和指针的引用
- 指针的指针和指针的引用
- 《牛客网剑指offer39题》输入一棵二叉树,判断该二叉树是否是平衡二叉树
- ioctl()函数获取本机ip,mask,mac
- android HTTPURLConnection解决不能访问HTTPs请求
- 【没有assembly目录】spark2.0.0启动时无法访问spark-assembly-*.jar的解决办法
- Linux 磁盘IO性能测试工具:FIO
- 指针的引用
- 欢迎使用CSDN-markdown编辑器
- 关于win10无法正常关机
- HDU1232 畅通工程
- java中的内部类总结
- React-Native学习指南
- loopback修改密码功能(去掉邮箱验证了)
- Apache Lucene初探
- 2017补全计划-持久化缓存-学习笔记