上一页 1 ··· 6 7 8 9 10

2013年4月28日

(原创) 一个通用的C++ 消息总线框架

摘要: c++11 boost技术交流群:296561497,欢迎大家来交流技术。应用开发过程中经常会处理对象间通信的问题,一般都是对象或接口的依赖和引用去实现对象间的通信,这在一般情况下是没问题的,但是如果相互通信的对象很多,可能会造成对象间的引用关系像蜘蛛网一样,这样会导致对象关系很复杂,难以维护的问题,解决这个问题的一个好方法是通过消息总线去解耦对象间大量相互引用的紧耦合的关系。设计思路:被通信对象向消息总线发布一个主题,这个主题包含消息主题、消息类型和消息处理函数,消息主题标示某个特定的主题,消息类型用来区分标示这个主题会响应某个特定的消息,消息处理函数用来响应该主题的某种消息类型。通信对象向 阅读全文

posted @ 2013-04-28 11:35 qicosmos(江南) 阅读(9289) 评论(2) 推荐(3) 编辑

2013年4月22日

(原创)C++ IOC框架

摘要: C++里面缺少一些有用的框架比如说AOP和IOC等,AOP框架的实现在前面的博文中已介绍了,现在介绍IOC框架。IOC即控制反转,它的思想是由IOC容器来管理对象的生命周期、依赖关系等,从而使得应用程序的配置和依赖性规范与实际的应用程序代码分开。其中一个特点就是通过文本的配置文件进行应用程序组件间相... 阅读全文

posted @ 2013-04-22 10:50 qicosmos(江南) 阅读(8158) 评论(7) 推荐(1) 编辑

2013年4月15日

(原创)一个log4cpp帮助类

摘要: 引用log4cpp头文件和lib文件后,通过一个帮助类来输出日志,帮助类中定义了一些静态方法,实现日志的输出,使用起来很简单。代码如下:#include #include #include #include using namespace log4cpp;#include #include boost::once_flag g_call_once=BOOST_ONCE_INIT;class Logger : boost::noncopyable{private: Logger(void){} static void Init() { #if _DEBUG ... 阅读全文

posted @ 2013-04-15 14:03 qicosmos(江南) 阅读(1469) 评论(1) 推荐(0) 编辑

2013年4月7日

(原创) C++ 轻量级AOP框架

摘要: c++11 boost技术交流群:296561497,欢迎大家来交流技术。c++中开源的AOP框架AspectC++需要单独编译才能将切面的代码织入到核心逻辑代码中,感觉使用起来不方便,不能满足快速开发要求。我希望只要实现方法拦截即可,能织入before()和after()操作就行,不追求动态织入。思路是这样的,通过一个包装类,里面定义before()和after()方法,和->运算符重载方法,在重载操作函数中实现before()和after()操作。具体代码如下:BaseAspect 1 #include 2 3 template 4 class BaseAspect 5 { 6 pr 阅读全文

posted @ 2013-04-07 10:17 qicosmos(江南) 阅读(8139) 评论(5) 推荐(1) 编辑

2013年4月3日

c++ lamda表达式调用自身实现定时器

摘要: 刚好要做一个定时器,用asio的deadline_timer,通过异步等待方式去做,超时后重新设置超时时间再重新异步等待。将lamda表达式放到function中,异步等待的时候再调用自身。具体代码如下:timer t;io_service ios;deadline_timer dt(ios, posix_time::seconds(2));cout<<dt.expires_at()<<endl;std::function<void()> f=[&](){dt.async_wait([&](system::error_code er){cou 阅读全文

posted @ 2013-04-03 14:31 qicosmos(江南) 阅读(1358) 评论(0) 推荐(0) 编辑

上一页 1 ··· 6 7 8 9 10

导航