im новое для изучения C++ и iam теперь в стадии создания класса, содержащего вектор объекта класса, с методами добавления новых объектов и вывода их на печать.Как объявить векторный объект в C++?
Вот мой код до сих пор:
BankAccount.h:
#ifndef BANKACCOUNT_H
#define BANKACCOUNT_H
#include <string>
using namespace std;
class BankAccount
{
public:
BankAccount(string C_Name,int C_Balance);
/*
void SetCustomerName(string C_Name);
String GetCustomerName();
void SetCustomerBalance(int C_Balance);
int GetCustomerBalance();
*/
int deposit(int deposit_);
int withdraw(int withdraw_);
private:
string customer_name;
int customer_balance = 0;
int Deposit = 0;
int Withdraw = 0;
};
#endif // BANKACCOUNT_H
BankAccount.cpp:
BankAccount::BankAccount(string C_Name,int C_Balance)
{
customer_name = C_Name;
customer_balance = C_Balance;
}
int BankAccount :: deposit(int deposit_){
Deposit = deposit_;
Deposit = Deposit + customer_balance;
cout << "\nDeposit Balance = " << Deposit;
customer_balance = Deposit;
return customer_balance;
}
int BankAccount :: withdraw(int withdraw_){
Withdraw = withdraw_;
Withdraw = customer_balance - Withdraw;
customer_balance = Withdraw;
cout<<"After Withdraw Balance is "<<customer_balance;
return customer_balance;
}
Bank.h
#ifndef BANK_H
#define BANK_H
#include <vector>
#include "BankAccount.h"
using namespace std;
class Bank
{
public:
//variables , lists
vector<BankAccount> newAccount;
BankAccount bk;
// constructor
Bank();
};
#endif // BANK_H
Bank.cpp:
#include "Bank.h"
#include <iostream>
#include <string>
#include <vector>
using namespace std;
Bank :: Bank()
{
string Customer_name = " ";
int Customer_balance = 0;
cout << "Add name please ";
cin >> Customer_name ;
cout << "How much balance?";
cin >> Customer_balance;
newAccount.push_back(bk(Customer_name,Customer_balance));
}
Класс BankAccount прекрасно, основная проблема заключается в классе банка.
Я создал класс банка для создания векторов BankAccount с методами, которые добавляют все BankAccount и распечатывают их все.
Однако эта ошибка продолжает появляться под конструктору Bank.cpp:
error: no matching function for call to 'BankAccount::BankAccount()'
кажется, что всякий раз, когда им пытаются объявить объект класса внутри вектора BankAccount, ошибка продолжает occuring.Can кто-то пожалуйста, объясните что я делаю неправильно и как это исправить?
Ой, я забыл вставить это, спасибо за то, что, хотя я все равно получаю ту же ошибку –