我有一個名爲更新帳戶的虛擬方法,其中基於從find方法找到的指針並返回到main,該帳戶將相應地更新。無法更新對象的屬性?
有一個叫做Account的父類,其中Savings來源於。
但是,儲蓄不會輸出更新的利息,也不會使利息生效。
所有賬戶有餘額和存款不會賬戶之間改變,這就是爲什麼我打電話帳戶的存款方式
void Savings::UpdateAccount(Date *date)
{
int interestMonths;
short lastYear;
short lastMonth;
float currBal;
//THESE GET THE CURRENT DATE - Differs from the account creation
//date and allows for the calculation of interest
lastMonth = GetAccountMonth();
lastYear = GetAccountYear();
currBal = GetAccountBal();
if (((date -> GetYear () - lastYear) * 12 +
(date -> GetMonth () - lastMonth)) > 0)
{
interestMonths = ((date -> GetYear () - lastYear) * 12 +
(date -> GetMonth () - lastMonth));
for (int index = 0; index < interestMonths; index++)
{
currBal = currBal + (currBal * interestRate);
}
//This method takes the calculated current balance, then
//passes it into the parent class method to update the
//private accountBal attribute.
SetBalance(currBal);
}
}
的問題是,這種方法沒有更新的對象和我的平衡我相當確定我的利率計算不是問題。
謝謝你的幫助 - 這種方法現在可以工作。
一般來說,你可以這樣做,是的。但是你發佈的代碼似乎不是你問題的根源,不管這些應該是什麼。 –
那麼如果沒有找到帳戶會發生什麼?提示調用者將得到一個指針,它不可能知道是對還是錯,並嘗試對其進行解引用。 –
@ lovestogame227你剛剛編輯了這個問題。請注意:這樣做會使所有過去的答案和評論顯得無關緊要。 – Cinch