构 A{
单 向量<串>记;
元<类 T>静 空 ff(串&a){
清理(记);名向量(a,记);
串 b{"---ff---"};打印(b);
T::g();
}
};
构 B:公 A{
元<类 T>静 空 f(){
串 a{"错误.txt"};ff<T>(a);
}
};
构 C:公 A{
元<类 T>静 空 f(){
串 a{"a12.cpp"};ff<T>(a);
}
};
构 D:公 A{
静 空 g(){
串 b{"=========="};
打印(b);打印(记);打印(b);
}
};
构 E:公 A{
静 空 g(){
串 b{"!!!!!!!!!!!"};
打印(b);打印(记);打印(b);
}
};
构 G:公 B,公 D{};
构 H:公 C,公 E{};
空 主(){
G g;g.f<G>();
串 b{"++++++++++++"};打印(b);
H h;h.f<H>();
}
C++
继承的多态性
通过这里来达到:
构 G:公 B,公 D{};
构 H:公 C,公 E{};
这样,B,C
相应不同的实现f
,而D,E
不同的实现g
最后,达到多态性
.