0

重複の可能性:
C++ のポインター変数と参照変数の違いは何ですか?

性能的にも機能的にも?

つまり、関数呼び出し中にポインターが指すデータの内容を変更したい場合、ポインター引数を渡すことは、参照引数を渡すこととまったく同じように機能しますか?

4

1 に答える 1

2

パフォーマンスに関しては、参照はポインターよりもわずかに優れています。これは、たとえば多重継承が行われている場合など、特定の場合に必要なポインターの調整に関係しています。変換されたポインターがnullの場合、ポインターがnullのままになるように、調整を逆にする (またはまったく行わない) 必要があります。参照をnullにできないという事実は、追加のチェックが必要ないことを意味します。

機能的には、参照ができないときにポインタをnullにすることができ、参照をできないときにポインタを再割り当てできます。それらにアクセスするための基本的な異なる構文以外。

基本的にいいえ、それらはまったく同じものではありません。

于 2012-12-29T02:46:09.537 に答える