将一个类的对象放在另一个类的数组中

Putting objects of one class in array of other class

本文关键字:另一个 数组 对象 一个      更新时间:2023-10-16

>我陷入了一个必须包含不同类对象的数组,例如我已经创建了类Student的对象:

Student* student11 = new Student("Vince", "Vaughn", "7-th Avenue", "New York", "783-945-90-28", 49);
Student* student12 = new Student("Vince", "Mcmahon", "Beverly Hills", "Los Angeles", "874-940-42-12", 47);
Student* student13 = new Student("Stone Cold", "Steve Austin", "Dallas", "Texas", "385-421-47-95", 34);

然后我创建了一个类Teacher的对象:

Teacher* teacher1 = new Teacher("Dave", "Bautista", "Washington", "Washington DC", "943-244-93-12", 31);

因此,任务是将Student类的创建对象放在属于其他类Course的数组中。并对类Teacher的对象做同样的事情。

数组是同类的:有一个单一的元素类型,数组的所有元素都是同一类型。数组中不可能有多个类型的元素。

如果类通过继承关联,则可以存储指向基类子对象的指针,这些子对象可能是不同派生类型的基

。另一种方法是使用标记的联合作为元素类型。std::variant是标准库提供的标记联合的实现。此类类型使用"类型擦除"技术来存储一组封闭类型的对象。

相关文章: