C++模板使用有很多的规则,如果稍有问题便会出问题。由于C++声明模板和实现模板规则不一样,很容易出错,现将遇到的注意事项列出来,当便大家也方便自己以后找错。
1、类的内部局部模板成员函数不能是虚拟的,virtual这个标识符。
2、声明了模板类,在实现其接口的时候注意在类域名加上 类名<定义的泛型变量>::函数名()
3、泛化仿函数Fuctor的使用
仿函数可以通过 定义函数指针的方式来进行传递和调用。
使用模板fuctor可以实现内部逻辑实现的分离,比如一个系统类,内部的功能需要其他系统的功能,我们不需要再次在自己的系统里撰写这个功能,我们只需要把绑定fuctor的接口流出来,由外部绑定之后,我们自己的系统类里可以使用外部的功能了,这样有效的降低了系统与系统之间的耦合性,唯一需要注意的是,调试会比较麻烦。