C++ 模板类 BinOper 实现二元运算

本文介绍如何使用 C++ 模板类 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;

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 = lop;
        lop = rop;
        rop = temp;
    }
};

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

总结

本文介绍了如何使用 C++ 模板类 BinOper 实现二元运算,并提供了代码实现和测试示例。模板类的使用可以提高代码的可复用性,使代码更加通用。

C++ 模板类 BinOper 实现二元运算

原文地址: https://www.cveoy.top/t/topic/osKG 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录