C++利用多策略类实现多态

多策略类在此
拥有多策略类后,不必使用继承的虚函数机制.来实现多态.代码如下:

#include "多策略.cpp"
构 B{
    空 f(){
        打印("啊");
    }
};
构 C{
    空 f(){
        打印("哦");
    }
};
构 D{
    空 f(){
        打印("D");
    }
};
元<类 T>概念 有啊=要求(T*t){
    t->f();
};//有概念
#define 鸭动作(S,f)\
    元<类 T>构 S{\
        静 常式 空 动作(T&t){f<T>(t);}\
    };
//用鸭动作来包装函数模板
元<有啊 T>空 f(T&t){
    t.f();
}//实现函数接口.
鸭动作(G,f);

空 主(){//B,C,D实现同一个策略
    多策略<B,C,D>a;//挨个构建.
    a.动作<G>();//调用方法.
}

需要个函数模板类模板.高级技巧中,非常需要它:

#define 鸭动作(S,f)\
    元<类 T>构 S{\
        静 常式 空 动作(T&t){f<T>(t);}\
    };

很重要,可自由扩展!

posted @   zjh6  阅读(9)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示