なぜ C では「this」は参照ではなくポインタなのでしょうか?

Patricia Arquette
リリース: 2024-11-24 10:18:11
オリジナル
485 人が閲覧しました

Why Is `this` a Pointer and Not a Reference in C  ?

「this」は参照ではなくポインタであるのはなぜですか?

C プログラマは、「this」が参照ではなくポインタであるという点でよく混乱に遭遇します。参考に。この問題は、歴史的な設計上の決定と言語の段階的な進化から発生します。

当初、C は参照ではなくポインターのみを備えていました。ただし、演​​算子のオーバーロードが導入されると、一貫性を確保するために参照が必要であると考えられました。

「this」の参照を使用すると、「&this」構文の必要がなくなりますが、代入演算子の呼び出しで複雑さが発生します。 "this" の代わりに *this" が必要になります。

さらに、 C の下位互換性は最も重要です。 「this」をポインタから参照に変更するには大幅なコード変更が必要となり、非現実的な選択となります。

したがって、既存のコードとの互換性を維持し、多様なニーズに応えるために、「this」は C のポインタのままになります。ユーザーコミュニティの。

以上がなぜ C では「this」は参照ではなくポインタなのでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート