gpt4 book ai didi

c++ - 尝试使用变量名实例化 C++ 中的类成员

转载 作者:太空宇宙 更新时间:2023-11-04 15:53:53 24 4
gpt4 key购买 nike

我正在为类编写一个程序,要求我们创建一类“书”。然后我们应该根据用户的要求创建该类的新实例。我是 C++ 的新手,所以我试图对此进行编码,但遇到了问题。

主要问题是如果我不知道我必须提前做多少,我该如何用变量实例化一个类。用户可以要求添加 1 本书或 1000 本书。我正在查看以下基本代码:

这是我开始时使用的简单代码。我想让一个索引 int 保留一个数字,并让我创建的书籍类被该 int(0、1、2 等...)调用所以我试图将传入的索引 int 转换为一个字符串,但是我'我有点被困在这里了。

void addBook(int index){
string bookName;
std::stringstream ss;
ss << index;

book bookName;

cout << "Enter the Books Title: ";
cin >> bookName.title;
}

但显然这不起作用,因为“bookName”是计算机的字符串,而不是我试图创建的类成员。

我在网上和文本中看到的所有教程都显示了用代码中的名称实例化的类,但我只是不知道如何使其可变,以便我可以创建任意数量的“书籍”用户可能想要。任何对此的见解将不胜感激。感谢您的宝贵时间。

最佳答案

给定你的类型book,如果你想创建一个书籍列表,尝试使用像std::vectorstd::list<这样的容器std::deque

typedef std::vector<book> library_type;

library_type library;

book catch22("Catch 22")
library.push_back(catch22);

book haltingState("Halting State");
library.push_back(haltingState);

您可以创建书籍并循环添加到图书馆,这听起来像您想要的。

您对容器类型的选择将取决于您想要的访问模式。例如,std::vector 如果您想像这样添加书籍并且您很少想以任意顺序删除它们,那么它就很好。如果您改变主意,稍后更改类型非常简单。

关于c++ - 尝试使用变量名实例化 C++ 中的类成员,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3049936/

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