适合有C基础后快速上手C++

C++面向对象,C面向过程。说白了,C++有工具可以调用,而C只能自己写。

C++的类,可以看出C语言结构体的升级版。类的成员不仅可以是变量,也可以是函数。

对象

对象是什么

什么是对象?对象是类的实例化。类定义出来的变量就是对象。

如何定义对象

直接定义,像C语言定义变量一样,直接定义一个就好。对象,就类似于C语言的变量。

或者new一个(相当于malloc动态内存申请)在堆里面定义。

如图

如何删除对象?

使用对象使用delete,只能删除new出来的对象。相当于C语言中的malloc后的free。

类的简单入门

如何访问类里的成员?

和C语言结构体的访问相同。

普通变量通过.访问。指针变量通过箭头

类的函数成员

类里面的成员不仅可以是变量,也可以是函数,

1.首先在类里面声明。

2.实现这个函数,可以直接写在类里面,也可以写在类的外面。

student::表示是这个student类里面的函数。

访问函数和访问变量的方式是一样的。这个功能可以通过C语言的函数指针实现。

类的访问修饰符

类函数的重载特性

在类里面定义同名函数,但是参数不同的函数。会根据参数类型,自动匹配函数

构造函数和析构函数

可写可不写,根据实际需求编写。

析构函数:如果定义了析构函数,当对象被删除或者生命周期结束时,就会触发析构函数。

return 0也会调用析构函数。

delete会调用析构函数。

构造函数:如果定义了对象,就会触发构造函数。

创建对象后就会指向构造函数。

析构函数和构造函数的名字必须和类名一模一样。

析构函数要在前面加上一个~

构造函数可以重载,析构函数不能重载。

类的继承

类的继承允许我们在新的类里面继承父类的public还有protected部分,private是不能被继承。当我们觉得这个类不好的时候,可以使用类的继承,添加我们需要的功能。

如何在子类里面访问父类的成员,也是通过.和->来访问的。

类似于C语言中的结构体嵌套结构体。

虚函数和纯虚函数

虚函数:有实际定义的,允许派生类对他进行覆盖式的替换,virtual来修饰。相当于C语言weak一个函数

纯虚函数:没有实际定义的虚函数就是纯虚函数。相当于C语言中weak一个空函数

怎么定义一个虚函数?

用virtual来修饰,虚函数就是用在类的继承上的。

就是你有就用你的,没有我也可以提供给你。

相关推荐
liulilittle3 分钟前
BFS寻路算法解析与实现
开发语言·c++·算法·宽度优先·寻路算法·寻路
阿珊和她的猫24 分钟前
autofit.js: 自动调整HTML元素大小的JavaScript库
开发语言·javascript·html
喜欢吃燃面43 分钟前
C++算法竞赛:位运算
开发语言·c++·学习·算法
草莓熊Lotso1 小时前
《详解 C++ Date 类的设计与实现:从运算符重载到功能测试》
开发语言·c++·经验分享·笔记·其他
困鲲鲲1 小时前
CPP多线程2:多线程竞争与死锁问题
c++·多线程·死锁
谱写秋天1 小时前
Qt 5.5 的安装与配置(使用 VSCode编辑)
开发语言·vscode·qt
项目申报小狂人1 小时前
算法应用上新!自适应更新策略差分进化算法求解球形多飞行器路径规划问题,附完整MATLAB代码
开发语言·算法·matlab
阿珊和她的猫5 小时前
v-scale-scree: 根据屏幕尺寸缩放内容
开发语言·前端·javascript
fouryears_234177 小时前
Flutter InheritedWidget 详解:从生命周期到数据流动的完整解析
开发语言·flutter·客户端·dart