谁能给我介绍一个广泛使用基于策略的设计的开源C++项目(最好不是库)?
发布于 2013-03-29 16:31:18
好吧,我认为任何使用STL容器的C++应用程序(由分配器参数化,有时也由比较器参数化)都会广泛使用基于策略的设计。它已经成为STL的基石,甚至在SGI看到了它的光芒。
发布于 2013-03-29 16:13:47
亚历山大·雷斯库最明显的一个:Loki
它正在积极地开发中。
发布于 2013-09-11 11:01:23
任何使用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=Code&ref=searchresults上查看大型项目。
如果你的意思是定义基于策略的对象,那么大多数用例都是库。这样做的原因是,如果某些东西需要大量定制,并且可以泛化,它就会变成一个库(即使是内部使用)。如果你只是写一个简单的程序,不需要定制对象和多态,那么它就不会使用太多基于策略的设计。对于这些,您还可以在github上搜索,尝试一些常见的基于策略的语法。
在我的科学工作中,我使用boost的odeint库,它依赖于策略。当我编写代码时,我从一个专门的哈密顿开始,然后我用策略对其进行泛化,它基本上变成了我在许多其他项目中使用的库。
https://stackoverflow.com/questions/15699638
复制相似问题