1

谁能指出我广泛使用基于策略的设计的开源 C++ 项目(最好不是 lib)?

4

3 回答 3

1

亚历山德雷斯库最明显的一个:洛基

它正在积极开发中。

于 2013-03-29T08:13:47.450 回答
1

好吧,我想任何使用 STL 容器(由分配器,有时是比较器参数化)的 C++ 应用程序都广泛使用基于策略的设计。它一直是 STL 的基石,甚至看到它在 SGI 看到了曙光。

于 2013-03-29T08:31:17.803 回答
1

任何使用 boost 的项目 :-) http://www.boost.org/community/generic_programming.html#policy

如果您的意思是启动基于策略的对象,那么将有很多项目使用 boost。例如,http ://programmingexamples.net/wiki/CPP/Boost/BGL/DijkstraDirected 或者您可以查看 github 上的大项目https://github.com/search?q=%23include+%3Cboost%2Fgraph%2Fgraph_traits。 hpp%3E&type=代码&ref=搜索结果

如果您的意思是定义基于策略的对象,那么大多数用例都是库。这样做的原因是,如果某些东西需要大量定制并且可以泛化,它就会变成一个库(即使是供内部使用)。如果您只是编写一个不需要自定义对象和多态的简单程序,那么它就不会使用太多基于策略的设计。对于那些,你也可以在 github 上搜索,尝试一些常见的基于策略的语法。

在我的科学工作中,我使用了 boost 的依赖于策略的 odeint 库。当我编码时,我从一个专门的哈密顿开始,然后我用策略概括它,它基本上成为我在许多其他项目中使用的库。

于 2013-09-11T03:01:22.953 回答