首页 > 代码库 > C++ 模版

C++ 模版

 

函数模版

#include <iostream>using namespace std;template<typename T>T add(T t1, T t2){        return t1 + t2;}//template int add<int>(int t1, int t2);int main(){        cout << add<int>(1.2, 3) << endl;}

 

 

类模版

#include <iostream>using namespace std;template <typename T>/** * 定义一个类模版, 并且实例化 */class Compare{        private:                T t1, t2;        public:                Compare(T a, T b):t1(a),t2(b){}                T max()                {                        return t1 > t2 ? t1 : t2;                }                T min()                {                        return t1 > t2 ? t2 : t1;                }};int main(){        Compare<int> c1(1, 2);        cout << "int max:" << c1.max() << endl;        Compare<double> c2(1.2, 3.6);        cout << "double min:" << c2.min() << endl;        Compare<char> c3(a, b);        cout << "char max:" << c3.max() << endl;        return 0;}

 

C++ 模版