您的位置:首页 > 其它

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是定义一个指针的引用指针当参数时,只能改名指针指向的内容,不能改变指针本身你。指针的引用当参数是,既可以改变指针指向的内容,又可以修改指针本身。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: