2020-02-17-C++ 概念

当父类派生出一个子类并且声明一个子类的对象时候,它将会调用父类的构造函数,然后调用当前类的构造函数来创建对象

当释放子类对象时候,先调用当前类的析构函数,然后调用父类的析构函数。


析构函数与构造函数 区别

析构函数 :类名前面 加标识符 ~

构造函数 主要用来对象创建时候,给对象一些数据成员赋值,主要目的用来初始化对象。

析构函数 :功能主要用来释放一个对象的,在对象删除之前,用它来处理一些清理工作,它与构造函数功能相反。



子类隐藏父类的成员函数

如果子类定义了一个和父类一样的成员函数 ,子类对象调用就是调用子类中的成员函数。



虚函数概述

出现在不同的层次 中可以 出现名字、参数个数    和类型相同而功能不同的函数。

如果子类有父类相同原型的成员函数时,要想调用父类的成员函数,需要对父类重新引用调用。

虚函数 则可以解决子类与父类相同原型函数调用问题。

虚函数允许在派生类中重新定义与基类同名的函数,并且可以通过基类指针或者引用来访问基类和派生类的同名函数。

在类中 用 virtual 声明成员函数 为虚函数 。

C++中虚函数可以继承,当一个成员函数被声明为虚函数后,其派生类中同名函数都自动成为虚函数,但如果派生类没有覆盖基类的虚函数。


多态的体现

多态的体现主要在 虚函数上,只要有虚函数存在,对象类型    就会在程序运行时动态绑定,动态绑定的方法定义一个指向基类对象的指针变量,并且使它指向同一类族中·需要调用该函数的对象,通过该指针变量调用此虚函数。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 3. 类设计者工具 3.1 拷贝控制 五种函数拷贝构造函数拷贝赋值运算符移动构造函数移动赋值运算符析构函数拷贝和移...
    王侦阅读 1,866评论 0 1
  • 1.面向对象的程序设计思想是什么? 答:把数据结构和对数据结构进行操作的方法封装形成一个个的对象。 2.什么是类?...
    少帅yangjie阅读 5,043评论 0 14
  • C++ 面向对象编程 博客园地址:http://www.cnblogs.com/xiongxuanwen/p/42...
    先之阅读 687评论 0 1
  • 1. 析构函数和虚析构函数 如果基类的析构函数是虚的,那么它的派生类的析构函数都是虚的 这将导致:当派生类析构的时...
    杰伦哎呦哎呦阅读 2,502评论 0 2
  • 一、程序设计概念等 结构化程序设计特点: 程序设计=数据结构+算法程序内容=过程+过程调用 面向对象的程序设计方法...
    C2U阅读 710评论 0 1