The Design and Evolution of C++
15.6 函数模板
1.“之所以引进函数模板,一是因为我们已经很清楚,需要有模板类的成员函数;二是因为如果没有这种东西,模板的概念看起来就不够完全。
//declaration of a template function:
template<class T> void sort(vector<T>&);
void f(vector<int>& vi, vector<String>& vs)
{
sort(vi); //sort(vector<int>& v);
sort(vs); //sort(vector<String>& v);
}
//definition of a template function:
template<class T> void sort(vector<T>& v)
/*
Sort the elements into increasing order
Algorithm: bubble sort (inefficient and obvious)
*/
{
unsigned int n=v.size()