c++ - 如何编写一个空类,初始化另一个类的三个对象

标签 c++ class oop derived-class

我必须根据 UML 图表示两个类。我将在此处上传图表:

UML Diagram

作为规范,程序需要创建一个包含三个 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 成员中。

关于c++ - 如何编写一个空类,初始化另一个类的三个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56714910/

相关文章:

c++ - 使用 QProcess 将 EndOfText (Ctrl-C) 发送到交互式 shell

c++ - 关于C++结构和数组的一些问题

java - 找到枚举大小的更好方法是什么?

c++ - 对象反射

c++ - pthread_exit() 后多久 pthread_join() 有望成功?

c++ - 为 C++ 定义一个错误类

python - 尝试从 Tkinter 比例尺中获取值并将其放入标签中

java - 查看嵌入在 jar 文件中的 .class 文件中的方法 |可能吗 ?

java - 除了易于调用之外,在 Java 中是否使用静态方法/函数?

R 层次结构和将参数传递给正确的函数