2016-03-01 227 views

回答

0
void swap(int *a, int *b) 

您期待可變由指針通過(類型指針的值爲int)


void swap2(int &a, int &b) 

你期待可變通過引用傳遞(這是該整數變量的地址)


但是,前面兩個語句在技術上是相同的。

1)第一種是所謂的是這樣的:

int a,b; 
swap(&x,&y); 

的另一個:

int a,b; 
swap2(x,y); 

2)可以傳遞NULLnullptr到的第一個。但是,你不能爲第二個。

據我記得,在谷歌c + +風格指南,他們更喜歡第一個,因爲它是顯而易見的參數可能會改變。

相關問題