函数模板
#include <iostream>
#include <map>
#include <vector>
#include <math.h>
#include <string.h>
using namespace std;
template<typename T>
int compare(const T &v1, const T &v2)
{
if (v1 < v2) return -1;
if (v2 < v1) return 1;
return 0;
}
template <typename T> T foo(T* p)
{
T tmp = *p;
return tmp;
}
int main()
{
int ret = 0;
ret = compare(1, 0); // T为int
cout << ret << endl;
vector<int> vec1{1, 2, 3}, vec2{4, 5, 6};
ret = compare(vec1, vec2); // T为vecotr<int>
cout << ret << endl;
return 0;
}
网友评论