我必須在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