利用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就可以了

Kubernetes 基础 快速开始

https://kubernetes.io/docs/tutorials/kubernetes-basics/cluster-intro/ create a cluster> minikube ve...
  • guizaijianchic
  • guizaijianchic
  • 2017年09月04日 10:05
  • 554

[K8S] 认证集群搭建

注意:该文章 是 根据 https://github.com/opsnull/follow-me-install-kubernetes-cluster    (follow-me-install-ku...
  • m0_37313242
  • m0_37313242
  • 2017年08月03日 13:03
  • 2168

使用 ASP.NET 语法创建模板

使用 ASP.NET 语法创建模板使用 ASP.NET 语法创建 Web 服务器控件模板 在 .aspx 文件中,将元素插入到控件中标识正在创建的模板: 在模板元素中,添加 HTML 文本...
  • dtor
  • dtor
  • 2005年07月06日 15:31
  • 666

C++实现代理(delegate)

记不清出处了,实现代码是别人的,自己整理的 //delegate.h /*! @file @author Albert Semenov @date 11/2007 @module */ /* ...
  • xiaoxiaoyusheng2012
  • xiaoxiaoyusheng2012
  • 2015年05月08日 20:56
  • 926

CVPR2017文章汇总

Date Time Location # Session Session Title Paper ID Paper Title Authors Saturday, J...
  • Iriving_shu
  • Iriving_shu
  • 2017年09月28日 00:11
  • 434

二十三种设计模式【PDF版】

  • 2011年05月30日 14:13
  • 1.42MB
  • 下载

Vue学习3(模板语法)

Vue.js使用了基于HTML的模板语法,允许开发者声明式地将DOM绑定至底层Vue实例的数据。所有的Vue.js都是合法的HTML,所以能被遵循规范的浏览器和HTML解析器解析。 在底层的实现上,...
  • boysky0015
  • boysky0015
  • 2017年08月28日 21:47
  • 200

UVa 12657 Boxes in a Line 数组模拟双向循环链表

#include #include #include using namespace std; const int maxn = 100000 + 10; int L[maxn], R[ma...
  • EventQueue
  • EventQueue
  • 2016年04月26日 21:42
  • 450

Spring 编程入门十大问题解答

1、如何学习Spring?   你可以通过下列途径学习spring:   (1) spring下载包中doc目录下的MVC-step-by-step和sample目录下的例子都是比较好的spring开...
  • yzkzoo
  • yzkzoo
  • 2007年11月20日 13:00
  • 417

第3章 比特币客户端

第3章 比特币客户端3.1 比特币核心:参考实现你可以从bitcoin.org下载标准客户端,即比特币核心,也叫“中本聪客户端”(satoshi client)。它实现了比特币系统的所有方面,包括...
  • dm201801
  • dm201801
  • 2018年01月18日 10:25
  • 166
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:利用C++的模板模拟.net的代理语法
举报原因:
原因补充:

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