C++类和对象使用set方法获得用户输入
C++ classes and objects getting user input using set method?
我得到了一项任务,我应该创建一个存放超市产品的货架。products类应该存储产品ID、制造商和名称,并包括构造函数、tostring、get+set方法。
我不明白这一部分:"创建一个名为Shelf的类,使用Vector/ArrayList存储产品集合"。这是否意味着我必须在类中创建数组/向量?
shelf类必须有一个addProduct方法,该方法接受一个产品对象作为输入,并将该对象添加到shelf中。
然后在驱动程序中,我需要:
-
创建产品对象的矢量/数组
-
创建货架对象
-
每次产品被放在货架上时,程序都必须询问产品ID、制造商&name,创建一个新的产品对象,然后通过调用方法将产品添加到工具架上。这个问题比这个长,但我只停留在这一点上。。。
基本上我唯一的问题是
- "创建货架对象"是指创建货架向量/阵列吗
- 如何使用从用户那里获得输入的set方法
现在(的一部分)我的set方法是这样的:(同类)
public:
Product(int id, string manufacturer, string name)
void setID(int newid)
(在驱动器中)
void Product::setID(int newid){ id = newid;}
我应该要求20个输入,我将使用for循环来完成。但是,我如何将我的集合方法更改为要求用户输入的方法呢?
很抱歉发了这么长的帖子,如果你能做到这一点,谢谢你。任何帮助都将不胜感激!
我很确定
"创建一个名为Shelf的类,以使用矢量/阵列列表"
意思是:创建一个包含Vector/ArrayList的类Shelf。Shelf类的方法应该使用正确的参数调用Vector/ArrayList的方法。
让我们分解一下需求。
创建一个名为Shelf的类,使用Vector/ArrayList 存储产品集合
看起来您至少需要两个类:Shelf
和Product
。你还需要一些容器。
这可以建模为:
class Product
{
};
class Shelf
{
std::vector<Product> m_products;
};
如何使用从用户那里获得输入的set方法?
通常,从用户处获得输入涉及cin
。
class Product
{
unsigned int m_id;
public:
void setter(void)
{
std::cout << "Enter product ID: ";
cin >> m_id;
}
};
"创建货架对象"是指创建货架向量/阵列吗?
让公开的API促进单个/多个产品的添加。因此,给它传递一个向量。货架将有自己的矢量
class Shelf
{
private:
vector<product> _products;
public:
void addProduct(vector<product> products){//copy the vector contents}
};
- 使用用户定义的参数调用future/async并调用类方法
- 直接在 unordered_map 的方法中使用哈希,而不是生成哈希的用户定义对象
- 在C++中,创建'n'数量的对象的推荐方法是什么,其中n是用户定义的。我该怎么做?
- 是否有解决方法可以在 c++ 中为 short 定义用户定义的文字?
- 如何最好地让用户重新定义类方法
- 有没有更简单的方法可以从用户那里获取三个数字并按升序打印它们?
- 将用户输入绑定到UE4.22.3及更高版本中的UActorComponent方法
- 模拟返回具有多个用户定义转换的类型的方法
- 是否有任何方法可以在用户输入文本时读取字符
- 测试用户输入数组中的重复项的最有效方法是什么?
- 我可以使用什么方法或方式将用户输入的字符串转换为 C++ 中的整数
- 在 c++ 中使用用户输入初始化数组大小的不同方法有哪些
- CPU寄存器中返回的用户定义类型的C 对象.实例方法如何工作
- 有什么方法可以让用户选择要输入哪个变量
- 拥有用于QT应用程序的Web用户界面的最佳方法
- 在用户类中包括PYBIND11嵌入式模块的正确方法(作为Singleton类的一部分)是什么?
- 有没有一种优雅的方法,根据用户输入只决定一次
- 让用户决定在C 中运行的功能的最佳方法
- 用户定义的非类型参数解决方法
- 当用户更改密码时,哪个窗口 API 调用?钩住这个 API 的好方法是什么