注意:你只需要考虑非负情况!在测试时也将保证不会出现负数。在减法中结果也不会为负数。
目前已有的整数类仍有一些缺陷,例如int的存储范围为 [-2^31, 2^31 - 1]。因此mfc希望实现MyInteger类,并可以高效地实现部分操作。你需要实现的操作有:
构造函数:
MyInteger() //默认构造很熟构造函数, 默认值为0
MyInteger(string& num) // 构造函数,从字符符串构造为大整数。
MyInteger(int num) // 构造函数,从整型构造为大整数。
~MyInteger() // 析构函数
成员函数:
string getnum() // 返回表示大整数的字符字符串,注意去除前导零。
例:
MyInteger bint(123);
cout << bint.getnum() << endl;
// will output "123"
MyInteger bint("01895");
cout << bint.getnum() << endl;
// will output "1895"
MyInteger operator+(const MyInteger& bint2) //大整数加法
MyInteger operator-(const MyInteger& bint2) //大整数减法
MyInteger operator-(const MyInteger& bint2) //大整数乘法
按照顺序测试以下函数:
- getnum 函数 (20pts)
- 加法重载 (30pts)
- 减法重载 (30pts)
- 乘法重载 (20pts)
下面是写好的私有成员变量
class MyInteger{
private:
string num;
public:
//balabala
};