1. 程式人生 > >OJ比較大小-類模板

OJ比較大小-類模板

/*
* 程式的版權和版本宣告部分:
* Copyright (c) 2013, 煙臺大學計算機學院
* All rights reserved.
* 檔名稱:test.cpp
* 作    者:任子儀
* 完成日期:2014年 5月 28日
* 版 本 號:v12.1
* 輸入描述:無
* 問題描述:。
* 程式輸出:
* 問題分析:略
* 演算法設計:略
*/

#include <iostream>

#include <iomanip>

using namespace std;

template<class numtype>

class Compare

{

public:

    Compare(numtype a,numtype b);

    numtype max();

    numtype min();

private:

    numtype x,y;

};
template<class numtype>
Compare<numtype>::Compare(numtype a,numtype b)
{
    x=a;
    y=b;
}
template<class numtype>
numtype Compare<numtype>::max()
{
    return (x>y)?x:y;
}
template<class numtype>
numtype Compare<numtype>::min()
{
    return (x<y)?x:y;
}
int main()

{

    int i1,i2;

    cin>>i1>>i2;

    Compare<int> cmp1(i1,i2);

    cout<<cmp1.max()<<" "<<cmp1.min()<<endl;

    float f1,f2;

    cin>>f1>>f2;

    Compare<float> cmp2(f1,f2);

    cout<<setiosflags(ios::fixed);

    cout<<setprecision(2);

    cout<<cmp2.max()<<" "<<cmp2.min()<<endl;

    char c1,c2;

    cin>>c1>>c2;

    Compare<char> cmp3(c1,c2);

    cout<<cmp3.max()<<" "<<cmp3.min()<<endl;

    return 0;

}


示例圖片;

心得體會:表示模板從來都沒學會啊。。。。。。。。做oj,發現了很大自己以前不會的。加油