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

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:函数二形参是引用,不是取地址 指针

相关文章
相关标签/搜索