定义二元运算模板类BinOper,主函数完成二元运算的测试。
BinOper类结构说明:
(注意:在下列说明中T为模板类型参数)
BinOper类的数据成员包括:
①私有数据成员:左操作数lop(T)。
②私有数据成员:右操作数rop(T)。
BinOper类的成员函数包括:
①公有成员函数void setData(T value1,T value2);其功能是设置左右操作数的值,其中左操作数设置为value1,右操作数设置为value2。
②公有成员函数T add();其功能是返回左操作数+右操作数的结果。
③公有成员函数T sub();其功能是返回左操作数-右操作数的结果。
④公有成员函数void swap();其功能交换左右操作数的值。
裁判测试程序:
#include<iostream>
using namespace std;
/*请在这里填写答案*/
int main(){
BinOper<int> a;
BinOper<double> b;
int d1,d2;
cin>>d1>>d2;
a.setData(d1,d2);
b.setData(d1,d2);
b.swap();
cout<<a.add()<<endl;
cout<<b.sub()<<endl;
return 0;
}
输入样例:
5 8
输出样例:
13
3
template<typename T>
class BinOper
{
private:
T lop;
T rop;
public:
void setData(T value1,T value2)
{
lop=value1;
rop=value2;
}
T add()
{
return lop+rop;
}
T sub()
{
return lop-rop;
}
void swap()
{
T temp;
temp=lop;
lop=rop;
rop=temp;
}
};