私のC++コードをコンパイル中にこのエラーが発生しました。 は、ここに私のコードです:`SavingsAccount :: annualInterestRate 'への未定義の参照
#include<iostream>
#include<iomanip>
using namespace std;
class SavingsAccount
{
private:
static float annualInterestRate;
float savingBalance;
public:
float calculateMonthlyInterest()
{return savingBalance+=(savingBalance*annualInterestRate)/12;}//adding the interest to savingBalance
static void modifyInterestRate(float r)
{annualInterestRate=r;}//modify the annualInterestRate
SavingsAccount(float saving)//constructor with argument to set savingValue
{savingBalance=saving;}
};
int main()
{
SavingsAccount saver1(2000.00), saver2(3000.00);//instantiate 2 different SavingsAccount object
SavingsAccount::modifyInterestRate(0.03);//set new interest to 3%
//printing savers' new balance after 3% interest applied
cout<<"THIS MONTH (3% INTEREST) :\n";
cout<<fixed<<setprecision(2)<<"Saver 1 balance : RM "<<saver1.calculateMonthlyInterest();
cout<<"\nSaver 2 balance : RM "<<saver2.calculateMonthlyInterest();
SavingsAccount::modifyInterestRate(0.04);//set new interest to 4%
//printing savers' new balance after 4% interest applied
cout<<"\n\nNEXT MONTH (4% INTEREST) :\n";
cout<<"Saver 1 balance : RM "<<saver1.calculateMonthlyInterest();
cout<<"\nSaver 2 balance : RM "<<saver2.calculateMonthlyInterest();
return 0;
}
完全なエラーメッセージ: C:\ Users \ユーザーNURULA〜1 \のAppData \ローカル\一時\のccOIgGs2.oクラスエクササイズ3なし1 2.cpp版:(RDATA $ .refptr._ZN14SavingsAccount18annualInterestRateE [.refptr._ZN14SavingsAccount18annualInterestRateE] +は0x0):。 `SavingsAccount :: annualInterestRate」
に未定義の参照と、この絵は私がやろうとしている質問のスナップショットです:
質問はコンストラクタを作成するようには要求しませんでしたが、バランス値を初期化する必要があると仮定して1つ作成しましたが、問題とエラーメッセージの原因となっているようです。私は正しい? ....または間違っている?
先進的にお願い致します。