[英]How can i access my second class through the Main function?
我創建了兩個類(Konto 和 Bank)。 我可以通過主 function 訪問我的第一個 class(konto),但我無法訪問我的第二個 class(銀行)以設置/更改其值。
我的一位朋友告訴我,問題是我的代碼在子文件夾中,但我真的不知道它是什么以及如何刪除它。
那么如何訪問我的第二類(銀行)是我的問題。
#include <iostream>
#include <string>
#include <vector>
class Konto {
public:
int konto_nummer;
std::string agare;
double saldo;
double rantesats;
public:
Konto(int _nummer, std::string _agare, double _saldo, double _rantesats);
int ge_konto_nummer();
void ranteutbetalning(double r);
//~konto();
friend class Bank;
};
class Bank {
private:
std::vector<Konto> konton;
int antal_konton;
int bank();
public:
Bank(std::vector<Konto> _konton, int _antal_konton);
void skrivut();
//~Bank();
};
Bank::Bank(std::vector<Konto> _konton, int _antal_konton)
: konton{_konton}, antal_konton{_antal_konton} {}
Konto::Konto(int _nummer = 12345, std::string _agare = "Ali",
double _saldo = 500, double _rantesats = 0.07)
: konto_nummer{_nummer}, agare{_agare}, saldo{_saldo}, rantesats{
_rantesats} {}
int Konto::ge_konto_nummer() { return konto_nummer; }
void Konto::ranteutbetalning(double r = 0.07) {
rantesats = r;
saldo += (rantesats * saldo);
}
void Bank::skrivut() {
int choose;
std::cout << "Choose: " << std::endl;
std::cout << "1- Adda new account: " << std::endl;
std::cout << "2-Print ur accounts: " << std::endl;
std::cout << "3- Search for accounts: " << std::endl;
std::cout << "4-Avsluta" << std::endl;
std::cin >> choose;
}
int main() {
Konto person;
std::cout << "Account: " << person.konto_nummer << std::endl;
std::cout << "Owner: " << person.agare << std::endl;
std::cout << "saldo: " << person.saldo << std::endl;
std::cout << "Rantesats: " << person.rantesats << std::endl;
std::cout << "===============================" << std::endl;
Bank obj;
obj.skrivut();
}
您缺少默認構造函數,因此出現錯誤;
error: no matching function for call to Bank::Bank
只需添加這一行:
public:
Bank() {} //add the default constructor
Bank(std::vector<Konto> _konton, int _antal_konton);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.