vc中参数问题和指针定义问题

来源:百度知道 编辑:UC知道 时间:2024/05/27 15:06:38
问下,vc++中函数参数经常会出现,如:string& ,这样的参数,string类型的参数我知道是什么意思,加了一个&号就迷糊了,多谢大侠指点一下.

还有一个问题是,定义指针时候我看到网上的文章有的是int* intptr,有的是int *intptr,*号位置是靠近变量啊还是靠近定义类型啊?多谢,刚入门,不要见笑.

string& 代表的是一个变量的引用,也相当于变量的别名。引用类型的函数参数是传变量的地址过去的,而不是传值过去的。所以在函数体内改变参数的值也会将实参的值改变掉。
关于你第二个问题,这只是一个写法的问题,是不影响编译的。

*号位置靠近变量,养成好习惯,不容易出错

int *a,*b,*c;//正确
int* a,b,c; //错误
int *a,b,c; //只有a是指针

在函数声明中可以 void func(int* a, int* b){};