#include<iostream> using namespace std; /*请在这里填写答案*/ template<class T> class BinOper{ private: T lop; T rop; public: void setData(T v1,T v2){ lop=v1; rop=v2; } T add(){ return lop+rop; }; T sub(){ return lop-rop; }; void swap(){ T jj; T j ; j=rop; jj=lop; rop=jj; lop=j; } }; 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; }
时间: 2024-04-26 19:20:18 浏览: 89
使用include <iostream>时一定要加using namespace std
这段代码中使用了模板类 BinOper,可以接受任意类型的数据。它有两个私有成员变量 lop 和 rop,分别表示两个操作数。setData 函数用于设置这两个操作数的值。add 函数和 sub 函数分别表示加法和减法运算。swap 函数用于交换 lop 和 rop 的值。
在 main 函数中,首先定义了两个 BinOper 对象 a 和 b,分别用于处理 int 和 double 类型的数据。然后通过 setData 函数分别设置了两个操作数的值。接着调用了 b 的 swap 函数,交换了 lop 和 rop 的值。最后分别输出了 a 的加法结果和 b 的减法结果。
阅读全文