预处理与代理设计模式

问题描述:

在从*的设计模式的代理部分说:预处理与代理设计模式

重载成员访问运算并不是适用于所有类型的代理一个很好的解决方案。一些代理 需要准确知道调用哪个操作,并且在这些情况下,超载成员访问操作员 不起作用。

[...]

在这种情况下,我们必须手动 执行该请求转发给所述受试者每个代理操作。

[...]

通常 所有操作验证该请求是合法的,即原来的对象存在,等等,转发 请求给受试者之前。一次又一次地写这个代码是很繁琐的。所以通常使用预处理器自动生成它。

好吧,哪一种预处理器和C++中的?

+1

听起来像是星期五晚上,有人想赶快回家... – 2011-05-05 20:27:46

+1

GOF书几乎不是很好的C++实践的伟大宝库。 – 2011-05-05 21:21:05

用于实现在C++一些设计模式的标准基准是

现代C++设计 通过Alexandrescu的

用于使用C++的类型系统的技术的另一种很好的参考建筑设计模式是

C++模板 作者:Vandevoorde &约祖蒂斯

而且模板元编程引用是

C++模板元编程:概念,由戴维·亚伯拉罕和Alesky Gurtovoy工具以及加速和超越 技术。

我认为它们是指围绕主题类自动生成包装代码。一个例子是由SWIG项目生成的包装代码。