クラス継承は廃止すべき
■ このスレッドは過去ログ倉庫に格納されています
00391
NGNGTemplate Methodって、アルゴリズムの各ステップの呼び出し順を規定して、
その中のいくつかに子クラスで実装を与えるパターンだと思ってたんだけど。
>>20に具体例を与えると、
template<class Impl>
class Human{
Impl impl_;
public:
void attack(){
impl_.punch();
impl_.kick();
}
};
class Yamada{
public:
void punch(){ /*実装*/ }
void kick(){ /*実装*/ }
};
class Tanaka{
public:
void punch(){ /*実装*/ }
void kick();{ /*実装*/ }
};
int main(){
Human<Yamada> yamada;
Human<Tanaka> tanaka;
yamada.attack();
tanaka.attack();
}
これはTemplate Methodじゃない?
■ このスレッドは過去ログ倉庫に格納されています