int *&p与int *P的区别
2015-11-28 16:21
239 查看
#include <iostream>
using namespace std; int g = 300; void print(int p, int q) { cout << p << endl << q << endl; } void set(int* &p, int* q) { p = &g; // p是引用类型,可以改变传进参数的指向 q = &g; // q不会 } int main() { int a = 10, b = 20; int *pa = &a, *pb = &b; print(a, b); cout << pa << endl << pb << endl; set(pa, pb); // pa现在指向g,但pb还是指向b,这就是引用和非引用的差别 // print(a, b); print(*pa, *pb); return 0; }
int *p是定义一个指针int *&p是定义一个指针的引用指针当参数时,只能改名指针指向的内容,不能改变指针本身你。指针的引用当参数是,既可以改变指针指向的内容,又可以修改指针本身。
相关文章推荐
- linux 安装jdk
- C语言结构体的“继承”
- java保存图片内容到数据库
- Centos安装OpenCV
- OPNET - 使用记录(1)
- iOS8系统H264视频硬件解码Demo
- Android兼容性问题 -- ListView.addHeaderView()异常
- permutations l
- 阿里fastjson.jar使用
- hbase过滤器
- 关于指纹解锁那些事
- 67. 查询分页数据(2)
- 【Leetcode】Combination Sum III
- 桶排序
- MYSQL---命令行方式导入sql文件
- C++拷贝构造函数
- centOS 更新python版本
- 【译】聚类分析
- 1-3-17:用边长求三角形面积
- Restore IP Addresses