编写一个名为Teacher的类,该类公有继承自Person类,并且增加major属性用来表示教师的专业,增加sleep( )方法打印教师的睡觉时间;C++
时间: 2024-01-22 17:19:23 浏览: 22
以下是一个可能的实现:
```c++
class Teacher : public Person {
public:
std::string major;
void sleep() {
std::cout << name << " sleeps from 10pm to 6am." << std::endl;
}
};
```
这个类中,我们使用了公有继承 `public Person` 来继承 `Person` 类中的成员变量和方法。然后,我们增加了一个名为 `major` 的属性来表示教师的专业。最后,我们增加了一个名为 `sleep` 的方法,用于打印教师的睡觉时间。在这个方法中,我们使用了 `name` 变量,它是从 `Person` 类继承而来的。注意,我们这里没有使用 `virtual` 关键字,因为 `Person` 类中的 `sleep` 方法不是虚函数。
相关问题
编写一个名为Teacher的类,该类公有继承自Person类,并且增加major属性用来表示教师的专业,增加sleep( )方法打印教师的睡觉时间;
好的,以下是Teacher类的代码实现:
```c++
class Teacher : public Person {
public:
string major;
Teacher(string n, int a, char s, string m) : Person(n, a, s), major(m) {}
void sleep() {
cout << "Teacher " << name << " sleeps at 10 PM." << endl;
}
};
```
在上述代码中,Teacher类公有继承自Person类,因此可以继承Person类中的属性和方法。同时,Teacher类增加了一个专业属性major,并定义了一个sleep()方法,用于打印教师的睡觉时间。在构造函数中,我们使用了初始化列表来初始化Teacher类中的属性和继承自Person类的属性。
编写一个名为Teacher的类,该类公有继承自Person类,并且增加major属性用来表示教师的专业,增加sleep( )方法打印教师的睡觉时间;
以下是一个可能的实现:
```cpp
class Teacher : public Person {
public:
Teacher(string name, int age, string major) : Person(name, age), m_major(major) {}
string getMajor() const { return m_major; }
void sleep() const { cout << getName() << " usually sleeps from 11pm to 6am." << endl; }
private:
string m_major;
};
```
这里的 `Teacher` 类继承自 `Person` 类,具有 `name` 和 `age` 成员变量以及 `getName()`、`getAge()` 方法。另外,它增加了一个 `major` 成员变量表示教师的专业,并且定义了一个 `getMajor()` 方法用来获取它。此外,它还增加了一个 `sleep()` 方法,用来打印教师的睡觉时间。注意,这里的 `sleep()` 方法没有修改任何成员变量,因此它应该是一个 `const` 成员函数。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![cpp](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)