gpt4 book ai didi

c++ - 作为类成员的结构的 STL 列表

转载 作者:行者123 更新时间:2023-11-28 04:38:53 24 4
gpt4 key购买 nike

对于我的家庭作业,我必须用 C++ 编写一个游戏类,它具有名称、大小和更新列表,其中包含更新日期和有关该更新的一些信息。 (例如:2018 年 5 月 22 日在任务 3 中修复了错误)。这是我尝试过的方法,但它不起作用。游戏.h:

class Game{
public:
struct update{
string date;
string info;
};
string name;
double size;
list<update>l;
Game(string name, double size, list<update>l);
virtual ~Game();
};

在 Game.cpp 中:

Game::Game(string name, double size, list<update>l){
this->name=name;
this->size=size;
this->l=l;
}

在 int main 中我创建了一个列表:

int main()
{
list<update>mylist;
update u1,u2,u3;
u1.date="20.05.2018";
u1.info="Mission 3 bug fixed";
u2.date="25.05.2018";
u2.info="New quest";
mylist.push_back(u1);
mylist.push_back(u2);
Game g("Gta5",60.0,mylist);
return 0;
}

我收到这个错误:

no matching function for call to 'Game::Game(const char [4], double, std::__cxx11::list<update>&)'|

最佳答案

或者如果你想保持嵌套类更新:

#include <string>
#include <list>


using std::string;
using std::list;

class Game{
public:
struct update{
string date;
string info;
};
string name;
double size;
list<update>l;
Game(string name, double size, list<update>l);
virtual ~Game() {}
};


Game::Game(string name, double size, list<update>l){
this->name=name;
this->size=size;
this->l=l;
}


int main()
{
list<Game::update> mylist; // use Game::update to access nested class
Game::update u1,u2,u3;
u1.date="20.05.2018";
u1.info="Mission 3 bug fixed";
u2.date="25.05.2018";
u2.info="New quest";
mylist.push_back(u1);
mylist.push_back(u2);
Game g("Gta5",60.0,mylist);
return 0;
}

关于c++ - 作为类成员的结构的 STL 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50679452/

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