#include<iostream>
using namespace std;
template <typename Type>
class Poly{
private:
Type base;
Type height;
public:
Poly(Type b = 0, Type h = 0):base(b),height(h){}
Type getArea()const{
return base * height;
}
template <typename T> inline int compare(const T &t1, const T &t2){
if(t1 < t2) return -1;
if(t1 > t2) return 1;
return 0;
}
};
int main(){
int b1 = 2, h1 = 3;
Poly<int> p1(b1, h1);
cout<<p1.getArea()<<endl;
int result = p1.compare(b1, h1);
if(result == 1) cout<<b1<<" > "<<h1<<endl;
else if(result == -1) cout<<b1<<" < "<<h1<<endl;
else cout<<b1<<" == "<<h1<<endl;
double b2 = 3.3, h2 = 2.2;
Poly<double> p2(b2, h2);
cout<<p2.getArea()<<endl;
result = p2.compare(b2, h2);
if(result == 1) cout<<b2<<" > "<<h2<<endl;
else if(result == -1) cout<<b2<<" < "<<h2<<endl;
else cout<<b2<<" == "<<h2<<endl;
return 0;
}
template函数和template类
最新推荐文章于 2022-03-04 12:50:13 发布