C++学习笔记(1) 继承、多态、虚函数、析构方法

最近开始学习 NDK 开发
学习之前要就得先了解 C++ 语言
啥是 C++ 呢?
就是个面向对象版本的 c 语言
管他是个啥,面向对象不就 封装 继承 多态 吗
所以一开始得先了解一下这三特性
封装没啥好学的
学一下继承 多态就好了

学习之前先了解几个 java 没有的新东西。

虚函数

​ 先别管太多,用 virtual 修饰函数就是虚函数,主要就是来实现多态特性的,具体看后面多态的分析

  • 纯虚函数

    因为 c++ 没有安卓的抽象和接口,所以需要一个纯虚函数来实现类似的功能。

析构方法

​ 和构造方法相对应的一个方法,类似 Android 的 onDestroy ,对象销毁之前会调这个方法。

继承

支持多继承

共有 私有继承

多态

静态多态

​ 编译的时候就确定对象类型

动态多态

动态多态就是 java 那种正常的多态,把函数写成虚函数,就能实现动态多态功能

  • 虚函数

    运行的时候检查当前函数的所属对象,用真正的对象类型调用它

    • 构造方法永远不要设为虚函数

      如果设为虚函数,就无法构造子类对象,只会构造父类的对象

    • 析构方法一般设为虚函数

      因为我们需要释放地址的时候,我们需要释放子类的地址

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