策略设计模式是一种基本的行为设计模式,允许客户端在运行时控制对象的行为。策略模式在 C++ STL 中实际应用,例如将“策略”应用于如何执行操作(例如 std::par 或 std::seq 就是一个例子)——因此策略通常也称为“策略模式”。策略设计模式通常用于在运行时选择算法以最好地解决问题——将算法行为与对象本身分开,以帮助我们的软件更易于维护、扩展和灵活。在本次演讲中,我们将从头开始介绍一系列使用策略模式在运行时部署不同算法的 C++ 示例。我们还将查看部署策略模式的库中的代码示例,并讨论在现代 C++ 中使用策略模式的最佳实践。策略模式还将与模板方法模式进行比较,后者可能是一种替代选择。与会者将通过本次演讲获得继续实施策略模式的知识,以及如何在他们可能正在开展的项目中发现策略设计模式!