c++函式傳參:值傳遞、指標傳遞、引用傳遞
阿新 • • 發佈:2019-02-20
1、將變數名作為實參和形參:
這時傳給形參的是變數的值,傳遞是單向的。如果在執行函式期間形參的值發生變化,並不傳回實參。應為在呼叫函式時,形參和實參不是同一個儲存單元。
2、傳遞變數的指標:
形參是指標變數,實參是一個變數的地址,呼叫函式時,形參指向實參變數單元。可以通過形參指標修改實參的值。
3、c++提供了傳遞變數的引用。
形參是引用變數,和實參是一個變數,呼叫函式時,形參指向實參變數單元。可以通過形參修改實參的值。
ps:引用就相當於變數的第二個標籤。
eg:
#include<iostream>
using namespace std;
void swap(int &x,int &y);
int main(){
int a=100;
int b=200;
cout<<"before swap,a:"<<a<<endl;
cout<<"before swap,b:"<<b<<endl;
swap(a,b);
cout<<"after swap,a:"<<a<<endl;
cout<<"after swap,b:"<<b<<ednl;
return 0;
}
void swap(int &x,int &y){
int temp;
temp=x;
x=y;
y=temp;
}
交換前,a 的值: 100
交換前,b 的值: 200
交換後,a 的值: 200
交換後,b 的值: 100
c++增加引用型別,主要是把它作為函式引數,以擴充函式傳遞資料的功能