C和C++中的引用傳遞


兩種引用傳遞的定義方式

  • 第一種

    
    #include<stdio.h> 
    void changeValue(int *a);
    int main(){
    	int a =1;
    	changeValue(&a);
    	printf("%d",a);
    	
    	return 0;
    }
    
    void changeValue(int *a){
    	*a=12;
    }
    

    Output

    12
    

這里實際上傳遞的是指針,在形參定義的時候,通過datatype *variable來聲明這個參數是指針類型,當然,在函數實現的時候,也應當使用指針的語法來修改這個變量或者傳遞這個變量的值。

  • 第二種

    
    #include<stdio.h>
    void changevalue(int &a);
    int main(){
    	int a =1;
    	changevalue(a);
    	printf("%d",a);
    	return 0;
    } 
    
    void changevalue(int &a){
    	a=12;
    }
    

    Output

    12
    

這種定義方式,實際上就是&在起作用,表示這個變量是引用傳遞,而不是值傳遞。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM