我必须代表两个基于UML图的类。我将在这里上传图表:
作为规范,要求程序将创建带有三个SaleItem对象的Sale。我的问题是了解在没有参数的类中如何做到这一点?我在下面尝试这样做:
#include <iostream>
using namespace std;
class SaleItem{
public:
int code = 0;
double price;
SaleItem();
SaleItem(double p){
code++;
price = p;
}
};
class Sale:SaleItem{
public:
Sale(){
SaleItem o1 = SaleItem(12.5);
SaleItem o2 = SaleItem(12.5);
SaleItem o3 = SaleItem(12.5);
}
};
int main()
{
Sale one;
return 0;
}
必须有一种更好的方法来执行此操作,因为我什至无法访问创建的对象并使用它们。我也可能会误解UML图,但是不幸的是它没有提供任何其他细节。
最佳答案
UML图上关系结尾处的白色平行四边形表示聚合。从本质上讲,这意味着这些物品是销售的成员。换句话说,销售类别不应为空。
由于未指定上限,因此项目不能是直接成员。我建议将项目存储在std::vector
成员中。