There is more code to this question in this previous question: C++ Trouble Inputting Data into Private Vector (invalid use)
I'm trying to output a vector of type "Account"
Account:
class Account { string firstName; string lastName; string accountPass; int accountID; float accountBalance; private: int depositAmount; int withdrawAmount; public: static Account createAccount( int, float, string, string, string ); //creates new account void deposit( int ); //deposits money into account void withdraw(int); //withdrawals money from account int retdeposit() const; //function to return balance amount friend class BankingSystem; }; //end of class Account This is the way I'm declaring the vector: std::vector<Account> accounts_;
And here's how I'm trying to print it to the screen:
for(int i=0; i < accounts_.size(); i++) { cout<< accounts_[i] <<endl; } But I'm getting this error "invalid operands to binary expression".
Current code;
class BankingSystem { int accountID; char fileName; private: std::vector<Account> accounts_; public: void addAccount(); void storeAccount( Account ); void deleteAccount(); void accountInquiry(); void saveAccounts(); void loadAccountsFromFile(); friend class Account; friend std::ostream& operator << (std::ostream&, const Account&); }; // end of class BankingSystem #endif std::ostream& operator << (std::ostream& os, const Account& acc) { // output members to os return os; } void BankingSystem::addAccount() { int ID; float balance; std::string pass, first, last; cout << "\n\t Enter the Account ID: "; cin >> ID; cout << "\n\t Enter the passcode: "; cin >> pass; cout << "\n\t Enter Client's first name: "; cin >> first; cout << "\n\t Enter Client's last name: "; cin >> last; cout << "\n\t Enter starting balance: "; cin >> setw(6) >> balance; storeAccount( Account::createAccount( ID, balance, pass, first, last ) ); return; } //function gets data from createAccount void BankingSystem::storeAccount( Account newAccountToAdd ) { //append to vector "accounts_" accounts_.push_back(newAccountToAdd); } void BankingSystem::deleteAccount() { cout << "\nEnter The Account ID: "; cin >> accountID; } void BankingSystem::accountInquiry() { int n; cout << "\n\t Enter The Account ID (-1 for all): "; cin >> n; //cout << accounts_.size(); if (n == -1) { cout << "\n\t List of all Accounts; (" << accounts_.size() << ") TOTAL: "; for(int i=0; i < accounts_.size(); i++) { cout<< accounts_[i] << endl; } } else { cout << "\n\t Listing Account: " << n; cout << "\n\t I should search the vector for the ID you input"; } }