我必须在C++中构建一个BigInteger类。 BigInt必须存储在一个固定大小的数组中。我现在想知道,是否有可能将赋值运算符重载为接受右侧的long long int数字(但将内部整数存储在数组中)。C++ BigInteger和赋值操作符重载
实施例:
的BigInteger I = 1000000000000000010000000000000000010000000000000000100000000000;
和国内它可以被存储,如:
i.data = {10000000000000000,100000000000000000,10000000000000000,100000000000};
这可能吗?这是多远我来:
#include "BigIntegerF.h"
using namespace std;
// Default Constructor
BigIntegerF::BigIntegerF() {
data[0] = 0;
}
// Destructor
BigIntegerF::~BigIntegerF(){}
BigIntegerF& BigIntegerF::operator = (const BigIntegerF& bigInt)
{
// don't know how i could implement it here
}
你试过吗?你知道如何重载'operator ='吗?如果是,那么你面临的问题是什么? – UnholySheep
请注意:您可能不希望覆盖赋值运算符,复制构造函数,析构函数等。这也被称为“零规则”,在[这里]解释(http://en.cppreference.com/w/cpp/language/rule_of_three)。 – anatolyg