模板

2022-10-17  本文已影响0人  mjzxcvbnm

函数模板

#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;
}
上一篇 下一篇

猜你喜欢

热点阅读