問題タブ [friend-class]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
3 に答える
513 参照

c++ - すべての派生クラスを互いに友達にする方法はありますか?

もしそうなら、これはどのような状況で役に立ちますか?

または(これが事実だと思います)、なぜそれが絶対に役に立たないのですか?(そのような友情によってもたらされる能力を本質的にカバーするが、より安全で漏れの少ない方法である他のアプローチは何ですか?)

そんなものが必要かと思うくらいの状況でした。最終的には、すべてのクラス メンバーを静的にする、まったく異なる設計を行いました。私はまだ興味があります。

0 投票する
1 に答える
783 参照

c++ - テンプレート フレンド クラス: 前方宣言または...?

フレンド クラスとして宣言しようとしているテンプレート クラスがあるとします。クラスを前方宣言するか、独自のテンプレートを指定する必要がありますか?

例:

または

0 投票する
3 に答える
626 参照

c++ - フレンド関数とインクルード ループ

2 つのクラス間のフレンド機能に問題があります。いくつかのコードを見てみましょう:

ファーストクラス:

および 2 番目のクラス:

CLASSを友達にしようとしても問題ありません。上記の例のように FUNCTION をフレンドにすると問題が発生します。これは First クラスの #include "Second.h" で修正できますが、インクルード ループになります。これを行う方法はありますか?

0 投票する
3 に答える
290 参照

c++ - C++ フレンド クラス マップ

そのため、フレンド クラスのプロパティにアクセスしようとすると問題が発生します。マップ内の最初のアイテムへのポインターが必要です。

class.h

およびimplem.hxx

ただし、コンパイル時に問題が発生します: エラー: 非静的データ メンバー A::database の無効な使用

どうすれば問題を解決できますか?

0 投票する
1 に答える
1021 参照

c++ - 'operator>>' に一致しません

フレンドクラスを実装しようとしています。コードを実行しようとすると、次のようなエラーが発生します。

私のコード:

0 投票する
1 に答える
56 参照

c++ - Square クラスで「friend class rect」がコメントされていても、なぜ rect クラスのプライベート変数を変更しているのでしょうか?

フレンドクラスで使用する以下のプログラムと混同しています。解決するのを手伝ってください

フレンドガイドラインに従って、フレンドクラスを使用すると、フレンドクラスのプライベートメンバーにアクセスして変更できるため、「//friend class rect;」とコメントしましたが。正方形クラスで、rect クラスのメンバーが「r.set_data(s);」によって正方形クラスによって変更されたのはなぜですか? この関数私の理解によると、通常の状態では、クラスのプライベート変数はそれがフレンドクラスである場合にのみ変更できます(したがって、以下の出力では、「//friend class rect;」とコメントしたように、新しい幅と新しい高さを変更しないでください。しかし、コメントされていても、set_data関数によってrectクラスの変数が変更されているのを見ているので、他のオブジェクトを任意の関数に渡すだけでプライベートメンバーが変更された場合、フレンドクラスを使用する必要はありません。

0 投票する
1 に答える
587 参照

c++ - C++ フレンド クラスの不完全型 OOP の無効な使用

私はいくつかの OOP を学ぶことに決め、条件を取り除き始めました (このプログラムではこれが不要であることはわかっていますが、単純な例から始めなければなりません)。

classには条件があり、友人の class のメソッドへの参照によってDirectConditionsのオブジェクトを渡し、 inのメソッドのいくつかの変数の値を変更します。SnakeGameDirectConditionsSnakeGameDirectConditions

エラー:

別の質問:

この機会に質問してもよろしいですか: 条件 (if) を取り除くこの方法は良いですか? 助けていただければ幸いです。

コードの提供:

snakeGame.hpp :

directConditions.hpp :

0 投票する
1 に答える
155 参照

c++ - クラスの友情(アクセシビリティ)の逆は本当ですか?C ++では?

フレンド クラスは、フレンド関数を含むクラスのメンバーにアクセスできます。その逆、つまり、クラスはそのフレンド クラスのメンバーにもアクセスできますか?