近期学到一些模板元编程的方法,进行总结:
1.多利用模板转发技术:
模板转发技术为一个通用技术,可以轻易扩展已有类的功能,不仅限于模板元编程。
实现步骤:假设有一个类为A,我们需要实现一个函数交fun()。于是,我们只需要实现一个类AImpl,在其中提供接口fun(),接着,使A继承AImpl,于是一切就都OK了。
要点分析:可以在几乎不改变A的情况下扩展功能。
2.利用模板可以实现在头文件中定义static成员:
实现举例:
原先使用:
Test.h
struct A {
static int m;
};
int A::m = 5; //放在头文件中&#