我被分配了一个任务,在那里我应该建立一个货架来储存超市产品。products类应该存储产品ID、制造商和名称,并包括构造函数、tostring、get+set方法。
这个部分我不明白:“创建一个名为Shelf的类来使用Vector存储一组产品”。这是否意味着我必须在类内创建数组/向量?
大陆架类必须有一个addProduct方法,该方法接受一个产品对象作为输入,并将该对象添加到货架中。
在驱动程序中,我需要:
基本上我唯一的问题就是
现在(部分)我的set方法是这样的:(在课堂上)
public:
Product(int id, string manufacturer, string name)
void setID(int newid)(在司机中)
void Product::setID(int newid){ id = newid;}我应该要求20个输入,我要用for循环来完成。但是如何将我的集合方法更改为要求用户输入的方法呢?
很抱歉发表了这么长的文章,如果你能做到这一点的话,我非常感谢。任何帮助都将不胜感激!
发布于 2016-01-11 16:23:33
我很确定
“创建一个名为Shelf的类,使用向量/ArrayList存储产品的集合”
方法:创建一个包含的类Shelf。Shelf类的方法应该用正确的参数调用Vector/ArrayList方法。
发布于 2016-01-11 16:26:47
让我们详细分析一下需求。
创建一个名为Shelf的类,使用向量/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;
}
};发布于 2016-01-11 16:40:41
“创建一个货架对象”是否意味着创建一个架子向量/数组?
让暴露的API方便地添加一个/多个products.hence,传递给它一个vector.Shelf将有它自己的向量
class Shelf
{
private:
vector<product> _products;
public:
void addProduct(vector<product> products){//copy the vector contents}
};https://stackoverflow.com/questions/34726197
复制相似问题