2017-10-17 171 views
0

我做了搜索用於交換鏈表的兩個節點C++的語法和發現的代碼塊如下:的指針和參考

void swapNode(call * &head, call * &first, call * &second) { 
    // swap values, assuming the payload is an int: 
    int tempValue = first->value; 
    first->value = second->value; 
    second->value = tempValue; 
} 

我的問題是什麼意思了放後的符號星號?

+0

如下所述,指定一個參考。但它看起來像你不需要它,因爲你沒有更新任何參數。 –

+0

@AnonMail實際上我不使用head參數,只是將內存地址中的值第一個和第二個點交換到 –

+0

經過測試,不需要&符號,謝謝 –

回答

1

&符(&)這裏代表reference。它不是地址運算符。

這是C++能夠更改傳入指針值的方式,因爲C/C++通過值傳遞參數。在C中,您將使用雙指針來實現相同。

+0

能給我簡單的關於表示引用的例子嗎? –

+0

'&'表示'reference',而不是它是'表示引用'。 –

+0

所以'&'用於'reference'和'address operator'? –