欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 文旅 > 美景 > 策略模式 (Strategy)

策略模式 (Strategy)

2025/4/2 14:10:11 来源:https://blog.csdn.net/m0_55576290/article/details/146540724  浏览:    关键词:策略模式 (Strategy)

策略模式 (Strategy)

  • 应用场景:用于处理不同的任务配置参数。在你的任务中,可能会有不同的任务类型,每个任务类型可能有不同的单位(比如米、毫米)或不同的处理方式。策略模式可以让你根据不同的任务类型选择不同的处理策略。
  • 优点:可以动态地选择不同的策略,而不需要修改任务配置类的代码。
class TaskStrategy {
public:virtual void execute() = 0;
};class MetricTaskStrategy : public TaskStrategy {
public:void execute() override {// 执行米为单位的任务}
};class MillimeterTaskStrategy : public TaskStrategy {
public:void execute() override {// 执行毫米为单位的任务}
};class Task {
private:TaskStrategy* strategy;
public:void setStrategy(TaskStrategy* strategy) {this->strategy = strategy;}void run() {strategy->execute();  // 根据当前策略执行任务}
};

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词