第13章では、ポインターについて話すときに段落があります。
ただし、場合によっては、参照渡しのセマンティクス、つまり、渡されたオブジェクトを値渡しの実装で変更しない、つまり、コピーではなく実際のオブジェクトを渡す必要がある場合があります。
著者は間違いを犯し、2つを混同したようです。これは本当ですか、それとも私は彼が正しく言っていることを理解していませんか?
第13章では、ポインターについて話すときに段落があります。
ただし、場合によっては、参照渡しのセマンティクス、つまり、渡されたオブジェクトを値渡しの実装で変更しない、つまり、コピーではなく実際のオブジェクトを渡す必要がある場合があります。
著者は間違いを犯し、2つを混同したようです。これは本当ですか、それとも私は彼が正しく言っていることを理解していませんか?
回答:
はい、混同しているようです。それを切り替えて、もう少し追加してください。
場合によっては、値渡しの実装が必要な場合があります。つまり、渡されたオブジェクトはコピーであり、変更は元のオブジェクトには影響しません。参照渡しのセマンティクスでは、オブジェクト自体は渡されません。
これは、const参照パラメーターのようなものです。これにより、特定の関数のコンテキスト内で不変である、大きくて変更可能な構造を持つことができます。
const T&
C ++には絶対に存在します。