天天看点

关于c++函数形参指针 与引用的说明

c++中函数传递方式一般为能够让主调函数改变传递值,选择函数传递指针或者引用两种方式,针对形参的传递两种方式,他们有区别的

形参指针的传递会单独开辟内存单元来存储地址,而形参为引用则不会,引用就是变量的别名,她是和变量共享存储单元的,所以不会独占内存单元(个人建议选择引用作为形参常用);具体看两个函数:

//形参是指针变量
void swap(int *a,int *b){
   int temp;
   temp=*a;
   *a=*b;
   *b=temp;

}
//形参引用
void swap(int &a,int &b){
   int temp;
   temp=a;
   a=b;
   b=temp;

}                

第一个函数形参为指针,使用swap(&c,&d);将实参的地址传输给指针变量,即是*a,*b和c,d变量对应同一内存单元;

第二个函数形参为引用,上面也提到引用实质就是变量的别名,所以直接这样干swap(c,d);传递变量名就可以了;ps:函数二形参是引用,不是取地址

版权声明:本文为CSDN博主「weixin_34174422」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/weixin_34174422/article/details/92556106