C Error please help My brain is just a little fried I wrote

C++ Error, please help.

My brain is just a little fried, I wrote this in the last 10 hours. I\'m receiving the following errors at the end of my cpp. I know they are not shown to be declared, but I\'m fried, please assist with where to put them to declare.

[Error] \'class bankAccount\' has no member named \'print\'

[Error] \'class bankAccount\' has no member named \'createMonthlyStatement\'

/////////////////////////////////

//main.cpp

////////////////////////////////

#include
#include
#include
#include

#include \"bankAccount.h\"
#include \"SavingsAccount.h\"
#include \"HighInterestSavings.h\"
#include \"NoServiceChargeChecking.h\"
#include \"ServiceChargeChecking.h\"
#include \"HighInterestChecking.h\"
#include \"CertificateOfDeposit.h\"
#include \"checkingAccount.h\"

using namespace std;
  
int main()
{
vector accountsList;

   //SavingsAccount( Name, Account number, Balance ) - Assume an interest rate = 0.03
accountsList.push_back(new SavingsAccount(\"Bill\", 10200, 2500));

   //HighInterestSavings(Name, Account Number, Balance) -- Assume an interest rate = 0.05, Minimum balance = $2500
accountsList.push_back(new HighInterestSavings(\"Susan\", 10210, 2000));

   //NoServiceChargeChecking(Name, Account Number, Balance) -- Assume an interest rate = 0.02, Minimum balance = $1000
accountsList.push_back(new NoServiceChargeChecking(\"John\", 20100, 3500));

   //ServiceChargeChecking(Name, Account Number, Balance) -- Assume account service charge = $10, Maximum number of checks = 5, Service Charee Excess Number of Checks = $5
accountsList.push_back(new ServiceChargeChecking(\"Ravi\", 30100, 1800));

   //HighIntererestChecking(Name, Account Number, Balance) - Assume an inerest rate = 0.05, Minimum balance = $5000
accountsList.push_back(new HighInterestChecking(\"Sheila\", 20200, 6000));

   //Certificate(name, Account Number, Balance, Interest Rate, Number of Months) - Assume an initial interest rate = 0.05, Initial Number of Maturity Months = 6
accountsList.push_back(new CertificateOfDeposit(\"Hamid\", 51001, 18000, 0.075, 18));

cout << \"January:\ -------------\" << endl;
for (int i = 0; i < accountsList.size(); i++)
{
accountsList[i]->createMonthlyStatement();
accountsList[i]->print();
cout << endl;
}

cout << \"\ February:\ -------------\" << endl;
for (int i = 0; i < accountsList.size(); i++)
{
accountsList[i]->createMonthlyStatement();
accountsList[i]->print();
cout << endl;
}

for (int i = 0; i < accountsList.size(); i++)
{
accountsList[i]->withdraw(500);
}

cout << \"\ March:\ -------------\" << endl;
for (int i = 0; i < accountsList.size(); i++)
{
accountsList[i]->createMonthlyStatement();
accountsList[i]->print();
cout << endl;
}
system(\"pause\");
return 0;
}

////////////////////////////////////////

//bankAccount.h

////////////////////////////////////////

#include
#include
#include

#ifndef BANKACCOUNT_H
#define BANKACCOUNT_H

using namespace std;

class bankAccount
{
public:
bankAccount(string name, int acctNum, double initialBalance)
{
m_Name = name;
   m_AcctNumber = acctNum;
m_Balance = initialBalance;
}

~bankAccount(void){}

string get_Name()
{
return m_Name;
}

int get_AcctNumber()
{
return m_AcctNumber;
}

double get_Balance()
{
return m_Balance;
}

void deposit(double amount)
{
m_Balance += amount;
cout << \"$\" << amount << \" has been deposited to your account\" << endl;
}

virtual void withdraw(double amount) = 0;
virtual void printStatement() = 0;
virtual void printSummary()
{
cout << setw(60) << setfill(\'-\') << \"\" << setfill(\' \') << endl;
cout << endl << setw(25) << \"\" << \"Account Summary\" << endl << endl;
cout << setw(25) << \"Name: \" << m_Name << endl;
cout << setw(25) << \"Account #: \" << m_AcctNumber << endl;
cout << setw(25) << \"Current Balance: $\" << m_Balance << endl;
}

protected:
string m_Name;
int m_AcctNumber;
double m_Balance;
};
#endif

Solution


Hi, You are calling
accountsList[i]->createMonthlyStatement();
accountsList[i]->print();
these two methods on each bankAccount type but,

I can see there are no \'print\' and \'createMonthlyStatement\' methods declared in \'bankAccount.h\' file
You have to also provide the defination of these two methods in \'.cpp\' file


#ifndef BANKACCOUNT_H
#define BANKACCOUNT_H
using namespace std;
class bankAccount
{
public:
bankAccount(string name, int acctNum, double initialBalance)
{
m_Name = name;
m_AcctNumber = acctNum;
m_Balance = initialBalance;
}
~bankAccount(void){}
string get_Name()
{
return m_Name;
}
int get_AcctNumber()
{
return m_AcctNumber;
}
double get_Balance()
{
return m_Balance;
}
void deposit(double amount)
{
m_Balance += amount;
cout << \"$\" << amount << \" has been deposited to your account\" << endl;
}
virtual void withdraw(double amount) = 0;
virtual void printStatement() = 0;
virtual void printSummary()
{
cout << setw(60) << setfill(\'-\') << \"\" << setfill(\' \') << endl;
cout << endl << setw(25) << \"\" << \"Account Summary\" << endl << endl;
cout << setw(25) << \"Name: \" << m_Name << endl;
cout << setw(25) << \"Account #: \" << m_AcctNumber << endl;
cout << setw(25) << \"Current Balance: $\" << m_Balance << endl;
}

virtual void createMonthlyStatement() = 0;
virtual void print() = 0;


protected:
string m_Name;
int m_AcctNumber;
double m_Balance;
};
#endif

C++ Error, please help. My brain is just a little fried, I wrote this in the last 10 hours. I\'m receiving the following errors at the end of my cpp. I know the
C++ Error, please help. My brain is just a little fried, I wrote this in the last 10 hours. I\'m receiving the following errors at the end of my cpp. I know the
C++ Error, please help. My brain is just a little fried, I wrote this in the last 10 hours. I\'m receiving the following errors at the end of my cpp. I know the
C++ Error, please help. My brain is just a little fried, I wrote this in the last 10 hours. I\'m receiving the following errors at the end of my cpp. I know the

Get Help Now

Submit a Take Down Notice

Tutor
Tutor: Dr Jack
Most rated tutor on our site