>>648,650
エラー通りだと思うんですけど,サンプルじゃprotectedになってんです
>>649
勝手にURI載っけていいの?
申し訳程度に改変して載っけると下のコードです.
適当な予想だとvc++では動くとか,動作は未確認でサンプル載っけたとか
class Hoge {
public:
virtual void Dispatch( Hoge* other ) = 0;
protected:
virtual void Action( Hoge_A* other ) = 0;
virtual void Action( Hoge_B* other ) = 0;
};
class Hoge_A : public Hoge {
public:
virtual void Dispatch( Hoge* other ) {
other->Action( this );
}
protected:
virtual void Action( Hoge_A* other ) { Greet( other );}
virtual void Action( Hoge_B* other ) { Eating( other );}
}
class Hoge_B : Hoge {
public:
virtual void Dispatch( Hoge* other ) {
other->Action( this );
}
protected:
virtual void Action( Hoge_A* other ) { Dance( other );}
virtual void Action( Hoge_B* other ) { Greet( other );}
}