利用C++的模板模拟.net的代理语法

原创 2011年01月11日 10:10:00

用了一段时间.net的代理模式,觉得挺好使.且原来C++代码中存在大量需要代理的东西,由于没有近似的东西,都是靠接口实现的,看起来很别扭.遂想我是不是也能做这么一个东西.

boost的function不是很熟悉,但基本实现还是明白的.直接用boost::function的话,有点杀鸡用牛刀的感觉,因为我仅仅只要一个很小很小的代理语法而已.况且,这么多年过去了,写C++代码越来越没有激情,正好有这么个契机,给自己来点激情.

废话不多说,看代码(别看注释,没有注释,看不懂就去看boost::function去)

 

vfxdelegate.h

 

vfxdelegate.inl

 

使用案例:

 

注:stl::vector<>是std::vector<,VFX::alloctor>的typedef。因此,你只需要把stl替换成std就可以了

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

cocos2d-x中委托机制

今天项目中遇到一个问题,我这样描述吧。 A是一个Layer,里面有个action,一旦A被初始化,这个action就会被执行。 B是一个场景。我在B中加入了A,但是要等到A中得那个Action执行...

在C++中模拟委托事件的方法(五)

五、事件链模拟事件 对应的例子工程名DelegateChainEvent 类模板的方法已经可以比较方便的让不同的对象接收同一个事件触发类的不同事件了,大多数的开发需要都能满足了,不过如果用过C#的...
  • gogogo
  • gogogo
  • 2011-11-22 13:00
  • 2319

在C++中模拟委托事件的方法(六)

最后我们针对这4种比较可行的模拟事件方法进行一下评价,评价的标准主要考虑以下几个方面 1、  是否可以只接收事件触发类的一部分事件 2、  一个事件触发类是否支持多个事件接收类对象接收事件 3、...
  • gogogo
  • gogogo
  • 2011-11-22 13:11
  • 1806

在C++中模拟委托事件的方法(二)

下边来看具体的实现方案   一、静态函数模拟事件 对应的例子工程名StaticFunctionEvent 1、  具体的实现方法 (1)、事件触发对象类CNotifyClass的类定义如下:...
  • gogogo
  • gogogo
  • 2011-11-22 10:24
  • 2803

在C++中模拟委托事件的方法(四)

三、静态函数方式实现多对象事件接收 对应的例子工程名MultiObjectEvent 在静态函数模拟事件方法中,如果读者细心的话,会发现类CNotifyClass只包含一个指定对象的成员变量m_p...
  • gogogo
  • gogogo
  • 2011-11-22 12:40
  • 1981

在C++中模拟委托事件的方法(一)

关键字:C++、事件、指向函数的指针、静态方法、接口、多重继承、模板   如果对C#、Delphi等语言熟悉,都知道这些语言支持委托事件的方法使用起来非常方便,并且能够较好的降低类的依赖关系,而C...
  • gogogo
  • gogogo
  • 2011-11-21 13:43
  • 6386

在C++中模拟委托事件的方法(三)

二、接口模拟事件 对应的例子工程名InterfaceEvent 由于C++不支持接口,但是支持抽象类和多重继承,所以可以通过class或struct模拟实现接口。 1、  具体的实现方法 (1...
  • gogogo
  • gogogo
  • 2011-11-22 10:46
  • 2034

利用C++的模板模拟.net的代理语法

转自 http://blog.csdn.net/lanzhengpeng2/article/details/6128362   用了一段时间.net的代理模式,觉得挺好使.且原来C++代码中存在大...

利用email.net设置网络代理发邮件

最近在做一个项目,客户的内部网络需要设置代理才能收发邮件,本来一个简单的东西突然变得复杂了,在baidu搜索了很久都没找到适合的组件,baidu就像个废物一样,没办法只能去yahoo搜,结果在微软的组...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)