2017-10-17 19 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実際には私は頭のパラメータを使用していません。単にメモリアドレスの値をスワップして –

+0

にテストします。アンパサンドの必要はありません。 –

答えて

1

アンパサンド(&)はreferenceを示しています。アドレス演算子ではありません。

これは、C/C++の値によってパラメータを渡すために、渡されたポインタの値を変更することができるというC++方法です。 Cでは、同じ目的を達成するためにダブルポインタを使用します。

+0

参考文献の簡単な例を教えてください。 –

+0

'&' '意味reference'、それは'示すreference'がないこと。 –

+0

はとても '&' 'reference'と'アドレスoperator'の両方に使用しますか? –

関連する問題