【发布时间】:2015-12-08 19:23:28
【问题描述】:
我正试图记住如何处理继承问题。假设我们有一个名为 Fruits 的父类/基类和一个名为 Apples 的子类/派生类。 Apples 与 Fruits 的唯一不同在于它有一个额外的变量,称为数字。我们将如何实现它,以便 Apples 默认始终调用父类构造函数,其值为“Apples”(名称)和 SNACK(类型)?
Fruits 会这样实现(
Fruits::Fruits(string name, KIND type): myName(name), myKind(type)
{}
Apples 是如何实现的,如果 Apples 被称为 Apples(),它的默认名称为“Apples”,类型为 SNACK,编号为 5? 这是正确的吗?
Apples::Apples() : Fruits("Apple", SNACK)
{
number = 5;
}
Apples::Apples(int num) : FoodItem("Pancakes", BREAKFAST )
{
}
【问题讨论】:
-
你说的是苹果和水果,但我看到的是 Pancake 和 FoodItem。你介意举个例子吗?
-
Fruit和FoodItem是什么关系? -
@Arun edit...搞错了!
-
@ohbrobig:谢谢,这就解释了。我已经添加了答案。
标签: c++ class inheritance