假设我有一个代表图书馆订阅者的班级。然后,我想创建多个其他派生类,代表不同类型的订阅者,如学生,教授等。
如何编写派生类构造函数?在我的基类Subscriber中,我有一个构造函数,它接受名称,年龄,id号等参数。 但是在我的派生类中,我有额外的参数,例如“schoolName”。如何为派生类设置构造函数Student知道我想要调用Subscriber的基类构造函数,并且还要将值添加到作为schoolName的额外参数。
也是我的第二个问题。是否最好将共享参数(如年龄,名称等)(基类和派生类共享)保护为私有?通过这种方式,学生可以轻松访问他的名字,
答案 0 :(得分:0)
Subscriber(const char *name, int age);
派生类构造函数:
Student(const char *name, int age, const char *sName)
:Subscriber(name, age) // We call the base class constructor
{
// Do something with sName.
}