c裏有兩種傳遞:
1.值傳遞
2.指針傳遞java
嚴格來看,只有一種傳遞,指針傳遞也是按值傳遞,傳遞的是地址(同java)c++
c++多一種引用傳遞指針
引用傳遞:非引用類型的形參以相應實參的副本(值)初始化,對(非引用)形參的任何修改僅做用於局部副本,不影響實參自己。對引用形參的任何修改會直接影響實參自己,(*應將不須要修改相應實參的引用形參定義爲const引用*)。code
實現兩個數交換的方式:class
int a=0,b=1; void swap1(int &a,int &b)//調用方式swap1(a,b) {int t=a;a=b;b=t;} void swap2(int* a,int* b)//調用方式swap2(&a,&b) {int t =*a;*a=*b;*b=t;}