【发布时间】:2020-05-31 16:25:04
【问题描述】:
我需要帮助以一种简单的方式解决我似乎无法使其工作的部分代码。我的“任务”的重点是所有东西都必须尝试在一个类中。现在我遇到的问题在我的代码的一部分,它假设“打印”n 个产品,这意味着它显示您在 void get() 部分中输入的内容,但我似乎无法解决的问题是它只打印最后一个产品的名称、数量、重量,而不是所有文字。
class Class
{
public:
string name;
int n, amount;
float weight;
void market()
{
cout << "Give the number of products you want to get at Market : " << endl;
cin >> n;
}
void get()
{
for (int i = 0; i < n; i++)
{
cout << "Give product name,amount and weight : " << endl;
cin >> name >> amount >> weight;
}
}
void print()
{
cout << "\nProduct display:\n" << endl;
for (int i = 0; i < n; i++)
{
cout << name << " - " << amount << " , " << weight << " kg" << endl;
cout << "------------------------" << endl;
}
};
};
主要部分。
int main()
{
Class market;
market.market();
market.get();
market.print();
}
【问题讨论】:
-
提示:避免将类变量声明为 public,它们违反了 OOP 规则。
-
但是你还没有存储all
names、weights等。你应该使用vector来存储all您需要的信息。此外,您的班级不应命名为Class,这不是描述性名称。Market怎么样?
标签: c++ visual-studio function loops class