background picture of the home page

Hi,Friend

20 对象的动态建立与释放

20 对象的动态建立与释放 与普通变量相同,对象也可以使用 new 运算符进行动态存储分配。 1 为什么需要动态建立对象 动态内存分配,分配的内存空间在 “堆” 中,而静态存储分配的内存在 “栈” 中。 如果我们不使用动态存储分配,我们建立的变量和对象,都会保存在 “栈” 中,而 “栈” 的空间并不

thumbnail of the cover of the post

19 析构函数

19 析构函数 析构函数也是一种特殊的成员函数,它的作用与构造函数相反,是在撤销对象占用的内存空间之前完成一些清理工作,使得这部分内存可以被程序重新分配。 1 语法 与构造函数相似,析构函数也没有函数类型,没有返回值。 与构造函数不同的是,析构函数不可以有参数,而且一个类中只能有一个析构函数,不能重

thumbnail of the cover of the post

17 构造函数

17 构造函数 1 构造函数的作用 在上一节中,我们定义一个对象后,是通过一一赋值的方式,对其中的属性进行初始化的,这很麻烦。 在C++中,有一种特殊的成员函数,它的名字和类名相同,没有返回值,不需要用户显式调用(用户也不能调用),而是在创建对象时自动执行,用于实现对象初始化。这种特殊的成员函数就是

thumbnail of the cover of the post

16 类的声明、对象的定义及使用

16 类的声明、对象的定义及使用 1 类的声明 类是创建对象的模板,一个类可以创建多个对象,每个对象都是类类型的一个变量;创建对象的过程也叫类的实例化。每个对象都是类的一个具体实例(Instance),拥有类的成员变量(属性)和成员函数(方法)。也就是说,需要先声明一个类,才能定义对应的对象。 类的

thumbnail of the cover of the post

15 面向对象思想

15 面向对象思想 1 由 “对象” 引发的误会 女友:听说,你们程序员需要面向对象编程,也没见过你写代码时,面向我呀? 程序员:不是啦,这个面向对象的对象不是你这个对象啦。 女友:什么?你还有其他对象吗? 程序员:(一股寒气袭来) 2 什么是面向对象 面向对象,英文名字叫Object Orient

thumbnail of the cover of the post

14 数据类型的别名

14 数据类型的别名 1 概述 我们学过了使用 “引用” 来作为变量别名的方法。那么,大家有没有想过,不只是 “变量” ,在 C++ 中, “数据类型” 也是可以起别名的呢? 我们为什么需要给数据类型起别名呢? 使类型名写起来更方便。 我们总会遇到一些特别长的数据类型名,如果我们直接用,写起来很麻烦

thumbnail of the cover of the post

13 枚举

13 枚举 1 为什么需要枚举 编程的目的,是使用程序解决现实中的问题。在现实中,我们常常可以遇到一个变量只能取已知的几个值的情况。比如:说到今天星期几,我们只能从已知的七个选择中选。 那么,我们应该用什么数据类型来存储 “星期” 这个变量呢? 使用字符串吗?C++ 风格字符串本就比 C 风格字符串

thumbnail of the cover of the post

在局域网上搭建亚秒级(超低延迟)直播平台

在局域网上搭建亚秒级(超低延迟)直播平台 本教程介绍了,如何使用开源直播平台 OvenMediaEngine (OME) 在局域网上搭建亚秒级(理论上延迟小于 1 秒)直播平台,并使用 OBS 开播。 OME 官网 和 GitHub OvenMediaEngine(OME)是一个开源的流媒体服务器,

thumbnail of the cover of the post