具有不同类型元素和使用类的2d数组

时间:2017-04-03 14:15:29

标签: c++ arrays class

与此处的其他人相同的故事。对c ++来说很新(一般编程)并且我很难完成任务。

我必须为DVD商店创建并实现一个类。我还必须创建一个数组来存储有关DVD的信息。数组的元素必须是class类(我必须创建)

到目前为止,我的挑战是数组必须包含int,string类型的元素。据我所知(很多谷歌搜索),这是不可能的。 我觉得有可能以某种方式使用类,但我无法找到解决方法。

请帮忙。

由于

莱昂

1 个答案:

答案 0 :(得分:1)

顺便说一下,你正在处理一个原始数据库,所以让我们把一个DVD商店项目称为记录。我们的想法是尽可能地对待事物,直到需要具体细节为止。

DVD商店记录:

struct Record
{
  std::string title;
  std::string artist;
  std::string genre;
  double price;
};

现在创建一个数据库来保存所有记录:

std::vector<Record> database;

您可能希望创建索引表以帮助加快搜索速度,而无需每次都使用数据库。

std::map<std::string /* Title */, unsigned int /* Index into database */>  Index_By_Title;
std::map<std::string, unsigned int>  Index_By_Artist;

这将成为一个2d容器,因为您通过使用索引到向量来访问该行,然后您可以使用成员名称访问该列。