调用由另一个没有名称的类创建的类对象

Calling a class object created by another class that doesn't have a name

本文关键字:对象 创建 有名称 另一个 调用      更新时间:2023-10-16

我有一个类,它创建另一个类的对象,FE:

University uni1("University 1");
uni1.createFaculty("Faculty 1");

现在我想打电话给创建以使用其功能的教师,但我不知道如何......

如果通过搜索可以找到任何方式,那么请原谅我,我不知道如何措辞。

院系存储在大学班级内的一组中。

你需要查看University::createFaculty返回的内容,并使用该返回值分配给某些内容:

Something x = uni1.createFaculty("hello");

我猜SomethingFacultyconst Faculty&Faculty&const Faculty*Faculty*

编辑:如果该方法创建Faculties并将它们存储在私有std::set<Faculty>中,则适当的返回值将const Faculty&

class University {
 public:
  const Faculty& createFaculty(args);
};

然后,调用方可以获取引用,也可以复制:

const Faculty& f0 = uni1.createFaculty("hello"); // take reference
Faculty f1 = uni1.createFaculty("hi"); // make copy

如果你的方法createFaculty返回一个指向动态分配的 Faculty 对象的指针,只需执行以下操作:

Faculty* fac1 = uni1.createFaculty("Faculty 1");

因此,您可以通过 fac1 引用新学院。