具有使用其他类对象的数组的类

Classes with Arrays using other class objects

本文关键字:对象 数组 其他      更新时间:2023-10-16

我目前有两个完整的类,教师和学生类有默认定义。

现在我正试图弄清楚课堂和学校的课程。课堂类应该容纳一名教师和 35 个学生对象的数组。

学校类应包含 100 个 Classroom 对象的数组。

该怎么做,我有点知道如何初始化类中的数组,但我不确定如何使用另一个类的对象来实现这一点?

class Teacher
{
   private:
     string last;
     string first;
     int gradeLevel;
   public:
     Teacher();
};
Teacher::Teacher()
{
   last = "AAAA";
   first = "BBBB";
   gradeLevel = 0;
}
class Student
{
   private:
      string studLast;
      string studFirst;
   public:
      Student();
};
Student::Student()
{
   studLast = "AAAA";
   studFirst = "BBBB";
}
class Classroom
{
};
class School
{
};

例如:

class Classroom
{
private:
    Teacher t; // create a teacher
    Student s[35]; // create an array of 35 students
...
};
class School
{
private:
    Classroom rooms[100]; // create an array of 100 rooms
...
};

您在这里要做的是创建一个Teacher,就像您想要的那样,然后创建一个Student对象的数组,如果您不知道,可以像Student students[35];一样完成。然后是 School 对象,它只是一个 Classroom 对象的数组。以下是完整的代码:

class Classroom
{
private:
    Teacher teacher;
    Student students[35];
public:
    Classroom();
};
Classroom::Classroom()
{
    ;
}
class School
{
private:
    Classroom classrooms[100];
public:
    School();
};
School::School()
{
    ;
}

注意:数组中的所有项目在编写类似 Student students[35]; 的内容时都会初始化。您可以通过执行cout << this->stduents[12].studLast << endl;来检查这一点