模板

810阅读 0评论2013-10-21 Dahuanxihuopusa
分类:LINUX

早先时候,是通过宏的方式,来写一套代码,实现多个类型都能使用。
这个是在预处理的时候处理的。

模板,就是把工作从预处理那,放到了编译器这。编译器根据你传递参数的类型,来给你整出具体的容器来。

封装,继承,是重复使用object code。
模板是重复使用source code。


执行效率估计没提高,甚至降低,只是提高了写代码的效率,写的快就是了。



模板的使用

模板定义:
1, 关键字 template
2,class  name {

public:char  func_1();
};

模板的使用。
name x; //定义了一个变量


==================================

如果是clase成员函数的定义,不在class内部,而是单独放在外面,那么需要
template
char name::func_1()
{}

也就是说:
1,也要在函数前面加上template
2,类名叫做 name


====================================
class 的成员,变量抑或函数,都可以始终使用T来替代具体的类型

===================================
模板类的声明和定义一般都放在头文件中,编译器不会为这些函数内部申请空间。有template做标志。

====================================
平时提到一个模板类,就是name,就如我现在要使用QT的一个链表,
那么有:QList, QLinkedList, 和 QVector 等多种模板可以选择。
上一篇:14 封装和继承
下一篇:自问自答