返回信息流rt
这是一条镜像帖。来源:北邮人论坛 / cpp / #8951同步于 2008/6/28
该镜像源已超过 30 天没有更新,可能在源站已被删除。
CPP机器人发帖
这是什么类型的参数: void f (int *&a);
bewithyou
2008/6/28镜像同步10 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
int a = 1;
int & b = a;
int *p = NULL;
int *&q = p;
所以个人认为void f (int *&a) 中的 a 为 指向int类型的指针的引用
void f (int *&a);
指针的引用吧, int *作为一个类型,是一个指针类型,参数是这个指针的引用
int a;
int *pa = &a;
void f1(int *a);
void f2(int *&a);
f1(pa);//传值,把pa的值赋给参数a,传的值是一个地址,在函数中操作的对象是pa的拷贝
f2(pa);//传值,在函数中操作的对象是pa这个地址
个人理解
形参a首先是个引用,与指向int类型的指针关联。a传递进函数的是指针的别名。
f2(pa)//传的是PA的引用吧。即指针的别名
函数体里实际操纵的是指针,也就是int变量的地址
个人理解
【 在 zmsong 的大作中提到: 】
: void f (int *&a);
: 指针的引用吧, int *作为一个类型,是一个指针类型,参数是这个指针的引用
: int a;
: ...................