在比较小的程序中,可能觉得有没有模版无所谓,但是如果去学习比较大型的项目程序,会发现模版无处不在。
之所以用模版,很大程度上也是面向对象,使代码简洁。
多的就不说了,直接说模版定义和使用就好啦。
先说函数模版:
定义:
template <type T>
int compare(const T &v1,const T &v2){};
使用:
cout <<compare(1,0);
编译器会自动匹配类型
inline函数模版
template<typename T> inline T min(const T&,const T&){};
注意inline的位置,只能放在那里,不能放在最前面。
下面看看听着很高级的类面板:
定义:
template <class Type> class Queue
{
public:
Queue();
Type &front();
const Type &front()const;
};
类模版使用:
Queue<int> qi;
Queue<vector<double>>qc;
Queue<string>qs;
顿时感觉好高大上。