
Boost
zwvista
这个作者很懒,什么都没留下…
展开
-
C++类库:P-Stade.Oven
关于P-Stade.Oven P-Stade.Oven是一个Boost.Range的扩展库,同时也是Range Library Proposal提案的一个具体实现。借助于这个类库,我们就能在Range上实施STL算法,从而获得更为简洁清晰的代码。 示例代码#include#include#include #include #include #inclu原创 2010-04-17 04:38:00 · 1003 阅读 · 0 评论 -
趣味编程:用BGL求解八数码问题(A*)
A* Graph Search Within the BGL Framework 代码#include #include #include #include "nonconst_bfs.hpp" // so we can modify the graph#include #include #include #include #include原创 2010-04-24 01:43:00 · 1451 阅读 · 1 评论 -
趣味编程:用Boost.Spirit 1.x 编写四则运算器
#include #include #include //#define BOOST_SPIRIT_DEBUG#include #include #include using namespace std;using namespace boost;using namespace spirit::classic;using namespace phoenix;struct c原创 2010-05-14 08:18:00 · 1533 阅读 · 0 评论 -
趣味编程:用Boost.Spirit 2.x 编写四则运算器
#include #include #include #include //#define BOOST_SPIRIT_DEBUG#include #include using namespace std;namespace phx = boost::phoenix;namespace qi = boost::spirit::qi;namespace ascii = boost原创 2010-05-14 08:32:00 · 1752 阅读 · 0 评论 -
FP编程实践:在C++0x中模拟F#的List.map和List.choose库函数
F#代码let list1 = [1; 2; 3]let newList = List.map (fun x -> x + 1) list1printfn "%A" newList//[2; 3; 4]let listWords = [ "and"; "Rome"; "Bob"; "apple"; "zebra" ]let isCapitalized (string1:string原创 2010-04-12 19:14:00 · 1784 阅读 · 0 评论 -
Boost.Signals2:在C++中实现事件处理
#include #include using std::cout;using std::endl;struct A{ void f() { int a = 2; event(1, &a); } boost::signals2::signal event;};void h5(int i, int* p) {cout << "h5\t" << i << " " <<原创 2012-10-29 13:48:30 · 4770 阅读 · 0 评论 -
C++11尝鲜:Variadic Function Templates(带变长参数的函数模板)(续)
代码1#include #include #include #include #include #include using namespace std;using namespace boost::fusion;using namespace boost::lambda;templatevoid output(First const& first, Rest const原创 2011-10-20 12:44:52 · 3140 阅读 · 2 评论 -
Boost.Range:试用Range Adaptors
#include #include #include #include #include using namespace std;using namespace boost::adaptors;using namespace boost::assign;namespace karma = boost::spirit::karma;int f(int x)原创 2010-05-21 21:51:00 · 1989 阅读 · 0 评论 -
MFC:如何使用Boost.Signal2在Document-View结构中添加事件响应机制
传统方式 1. XXDoc.h//...class CXXDoc : public CDocument{//...// Operationspublic: void Foo1(); void Foo2(); void Foo3();//...};2. XXDoc.cpp//...void CXXDoc::Foo1(){原创 2010-05-21 10:40:00 · 2006 阅读 · 0 评论 -
Boost.Spirit.Qi:玩转Actions
#include #include #include #include #include #include struct writer{ void print(int const& i) const { std::cout << i << std::endl; } void do_nothing() const { }}原创 2010-05-13 21:59:00 · 2838 阅读 · 0 评论 -
C++惯用法:metafunction(元函数)
元函数:编译期的函数Metafunction: compile-time analogs of runtime functions 与运行期使用函数封装算法相对应,在C++编译期同样存在着封装算法进行编译期计算的需要。元函数(metafunction)便是实现这一需求的主要手段。元函数这一概念最早是由Boost.MPL类库提出并定义的。 作为在编译期进行计算的函数,元函数原创 2010-03-27 14:38:00 · 4354 阅读 · 0 评论