1. 程式人生 > >C++中函式的引數傳遞

C++中函式的引數傳遞

一、值傳遞

形參和實參是存放在兩個不同的記憶體單元中。

二、指標傳遞(地址傳遞)

1.當進行指標傳遞時,形參是指標變數,實參是一個變數的地址或是指標變數,呼叫函式時,形參指向實參的地址。因此形參指標的值與實參變數的值應該相等。即把實參的地址傳遞給形參,通過形參指標可以更改實參指向的記憶體空間的值。

2.在指標傳遞中,函式體內可以通過形參指標改變實參地址空間的內容。

三、傳遞引用

1.引用實際上就是某一變數的別名,和這個變數具有相同的記憶體空間。

2.實參把變數傳遞給形參引用,相當於形參是實參變數的別名,對形參的修改都是直接修改。

3.在類的成員函式中經常用到類的引用物件作為形參,以提高程式碼效率。

//引用傳遞  
void Fun(int &a){  
    cout<<"形參引用a的地址 = "<<&a<<endl;  
    a = 100; //對形參引用進行修改  
}  
  
int main(){  
    int a = 10;  
    cout<<"實參a的地址 = "<<&a<<endl;  
    cout<<"實參a的值 = "<<a<<endl;  
    Fun(a);  
    cout<<"實參a的值 = "<<a<<endl;  
    getchar();  
    return 0;  
}  

輸出結果: