类的派生释疑

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了类的派生释疑相关的知识,希望对你有一定的参考价值。

一个关于继承的例子,所以继承,到底有什么用...?

#include<iostream>
#include<string>
#include<vector>
using namespace std;
class Book
{
    public:
        void page()
        {
            cout<<"有一百页哦"<<endl;
        }
        void name()
        {
            cout<<"名字是:自动化控制原理"<<endl;
        }
};
class Toolbook :public Book
{
public:
    void page()
    {
        cout<<"这里会不会显示出来我也不知道"<<endl;
    }
    void name()
    {
        cout<<"同样的还有这里"<<endl;
    }
};
int main()
{
    cout<<"你从来不曾认真修炼过自身"<<endl;
    Book book1;
    book1.page();
    book1.name();
    Toolbook book2;
    book2.name();
    book2.page();
    return 0;
}

 但是派生的类里面如果不定义基类的函数或者定义了没有函数体就不能执行,就算重新定义了也与之前的类没有关系,还不如自己重新写一个类来得方便,那么,类的派生到底有什么用?

书上说的是,可以拥有基类的数据类型,以及执行基类的构造函数用来构造自身的对象,

   吸收基类成员(除构造析构函数以外的所有成员);
   改造基类成员(根据继承方式调整基类成员的访问,函数在子类中的覆盖,以及虚函数在子类中的覆盖);
   添加新的成员;
可是为什么......
好吧我理解了,如果派生类里面没有定义任何东西,是可以直接建立派生类的基类对象的。
emmm.....看来之前只看书不动手,模糊的记了一堆概念真的是远远不够的..
多练多反思才是正道..

以上是关于类的派生释疑的主要内容,如果未能解决你的问题,请参考以下文章

类的继承与派生

类的继承与派生

派生类的对象

派生类的模板类作为函数的参数 - 危险?

当派生类的析构函数是虚拟的而基类的 dtor 不是时代码崩溃

来自两个派生类的多重继承