C++中派生类的继承关系?
下列代码声明了3个类:classPerson{};classStudent:publicPerson{};classUndergraduate:Student{};下列关...
下列代码声明了3个类:
class Person{ };
class Student:public Person{ };
class Undergraduate:Student{ };
下列关于这些类之间关系的描述中,错误的是?
A.类Person是类Undergraduate的基类
B.类Undergraduate从类Student公有继承
C.类Student是类Person的派生类
D.类Undergraduate是类Person的派生类
关于派生类的继承关系有点晕,这种基类和派生类关系的题应该怎么解呢?? 展开
class Person{ };
class Student:public Person{ };
class Undergraduate:Student{ };
下列关于这些类之间关系的描述中,错误的是?
A.类Person是类Undergraduate的基类
B.类Undergraduate从类Student公有继承
C.类Student是类Person的派生类
D.类Undergraduate是类Person的派生类
关于派生类的继承关系有点晕,这种基类和派生类关系的题应该怎么解呢?? 展开
4个回答
展开全部
继承就是把上一个类中的东西拿到这个类中,同时再在这个类中加以其他的成员等派生类就是在基类的基础上构建的类, 可以节约很多代码
比如
class Man // 类型 "人"
{
public:
int HP; // 生命
int MP; // 魔力
void Run(); // 动作 - 跑步
void Jump(); // 动作 - 跳
//// 各种其他成员数据
};
现在我们需要一个新的类, SuperMan 超人
还需要重新定义一个全新的类, 加上 生命, 魔力, 跑, 跳之类的吗? 多麻烦啊
只要继承就好了
class SuperMan
public : Man // 继承Man
{
public:
void Fly(); // 超人独有技能 - 飞
};
就这么简单, 像 HP, MP, Run 之类的编译器会偷偷帮你加上
SuperMan sm;
sm.Run(); /// 虽然你没有定义SuperMan的Run, 但是由于继承的原因, Super自动包含这个函数
sm.Jump();
至于动态绑定, LZ既然问到上面的问题, 那么估计还没学到, 我就不罗嗦了
void Show --- 一个叫Show的函数, 不返回任何数据, void是没有类型的意思赞同0| 评论
比如
class Man // 类型 "人"
{
public:
int HP; // 生命
int MP; // 魔力
void Run(); // 动作 - 跑步
void Jump(); // 动作 - 跳
//// 各种其他成员数据
};
现在我们需要一个新的类, SuperMan 超人
还需要重新定义一个全新的类, 加上 生命, 魔力, 跑, 跳之类的吗? 多麻烦啊
只要继承就好了
class SuperMan
public : Man // 继承Man
{
public:
void Fly(); // 超人独有技能 - 飞
};
就这么简单, 像 HP, MP, Run 之类的编译器会偷偷帮你加上
SuperMan sm;
sm.Run(); /// 虽然你没有定义SuperMan的Run, 但是由于继承的原因, Super自动包含这个函数
sm.Jump();
至于动态绑定, LZ既然问到上面的问题, 那么估计还没学到, 我就不罗嗦了
void Show --- 一个叫Show的函数, 不返回任何数据, void是没有类型的意思赞同0| 评论
展开全部
B 错,
类继承 :后面如果直接跟着基类名 , 默认就是private,即私有。
为了是程序可读,我们习惯性的在私有继承上也显示的写出private。
很多小问题,大众化的书写习惯能给你节省不少时间
类继承 :后面如果直接跟着基类名 , 默认就是private,即私有。
为了是程序可读,我们习惯性的在私有继承上也显示的写出private。
很多小问题,大众化的书写习惯能给你节省不少时间
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
B错,C++默认为private继承方式
就算你不知道B错与对,A、C、D很容易一看就是对的啊,这是最基础的基础了,老兄得认真看看书了,基础知识书籍推荐:c++ primer、 看完后即可深入典典大名的c++八大金刚!
就算你不知道B错与对,A、C、D很容易一看就是对的啊,这是最基础的基础了,老兄得认真看看书了,基础知识书籍推荐:c++ primer、 看完后即可深入典典大名的c++八大金刚!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
B错误
c++中,class的默认继承方式是private,也就是私有的
找本书好好看看吧,然后多动手编写程序练习吧
c++中,class的默认继承方式是private,也就是私有的
找本书好好看看吧,然后多动手编写程序练习吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询