gpt4 book ai didi

c++ - 无法在没有对象的情况下调用成员函数 std::string Sportist::getIme()

转载 作者:行者123 更新时间:2023-11-28 06:52:11 26 4
gpt4 key购买 nike

我有一个 A 类:

class Sportist{
private:
string ime;
int godina_na_ragjanje;
int godisna_zarabotuvacka_EUR;
public:
Sportist(string i, int g_n_r, int g_z_EUR){
ime = i;
godina_na_ragjanje = g_n_r;
godisna_zarabotuvacka_EUR = g_z_EUR;
}
string getIme(){
return ime;
}
int getGodinaNaRagjanje(){
return godina_na_ragjanje;
}
int getGodisnaZarabotuvackaEUR(){
return godisna_zarabotuvacka_EUR;
}
};

B 类使用 A 类作为公共(public):

class Fudbaler:public Sportist{
private:
int broj_na_odigrani_natprevari;
int danocna_stapka;
public:
Fudbaler(string ime, int godina, int zarabotuvacka, int b, int d)
:Sportist(ime, godina, zarabotuvacka)
{
broj_na_odigrani_natprevari = b;
danocna_stapka = d;
}
float danok(){
return getGodisnaZarabotuvackaEUR() * danocna_stapka;
}
friend ostream& operator<<(ostream &os, Fudbaler F){
return os << "Ime: " << getIme() << endl
<< "Godina na raganje: " << getGodinaNaRagjanje() << endl
<< "Godisna zarabotuvacka(EUR): " << getGodisnaZarabotuvackaEUR() << endl
<< "Danok sto treba da plati: " << danok();
}
};

我在这些行的标题中遇到了 4 个错误:

        return os << "Ime: " << getIme() << endl
<< "Godina na raganje: " << getGodinaNaRagjanje() << endl
<< "Godisna zarabotuvacka(EUR): " << getGodisnaZarabotuvackaEUR() << endl
<< "Danok sto treba da plati: " << danok();

不能在没有对象的情况下调用成员函数 'std::string Sportist::getIme()'

不能在没有对象的情况下调用成员函数 'int Sportist::getGodinaNaRagjanje()'

不能在没有对象的情况下调用成员函数 'int Sportist::getGodisnaZarabotuvackaEUR()'

不能在没有对象的情况下调用成员函数 'float Fudbaler::danok()'

最佳答案

我会说函数应该改为

friend ostream& operator<<(ostream &os, Fudbaler F){
return os << "Ime: " << F.getIme() << endl
<< "Godina na raganje: " << F.getGodinaNaRagjanje() << endl
<< "Godisna zarabotuvacka(EUR): " << F.getGodisnaZarabotuvackaEUR() << endl
<< "Danok sto treba da plati: " << F.danok();
}

我不确定 std::streams 的运算符重载。我通常在课外这样做。从您的错误消息中,您需要使用传递的 Fudbaler 变量来访问它的方法。

关于c++ - 无法在没有对象的情况下调用成员函数 std::string Sportist::getIme(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23739251/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com