:派生クラスは、内部クラスのフレンドである親クラスの保護された内部クラスのプライベートメソッドにアクセスできますか?このクラスを考慮
外部クラスMatchable
は内部クラス
Match
の友人であり、このクラスを考慮し
class Matchable
{
protected:
class Match {
friend class Matchable;
void append(const Match& match) {}
};
public:
virtual bool match(const Source& source) = 0;
};
...:Literal
が由来し
class Literal : public Matchable {
bool match(const Source& source) override {
Matchable::Match m;
Matchable::Match cm;
m.append(cm);
return true;
}
}
... Matchable
、にMatchable::Match
をインスタンス化できるようですが、プライベートメソッドMatchable::Match::append()
を呼び出すことができません。ここでLiteral
は "f 「riendliness」はMatchable
です。
この動作が期待されている場合、Literal
に親内部クラスのプライベートメソッドにアクセスさせる方法がありますMatch
?
"派生クラスは、内部クラスのフレンドである親クラスの保護された内部クラスのプライベートメソッドにアクセスできますか?" ...それはBrawndoを使用する場合のみ..それは電解質を持っている! – txtechhelp