自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 C++ --- this指针

结果:我们定义了d1,d2,d3这样3个Date类的对象,这3个类对象共享void Print() 这个成员函数,那么在调用d1.print()函数的时候,在print()函数中它是怎么知道输出的是d1的年,月,日,而不是d2或是d3的呢?C++编译器给每个“非静态的成员函数“增加了一个隐藏的指针参数,让该指针指向当前对象(函数运行时调用该函数的对象),它的值是当前被调用的成员函数所在的对象的起始地址。我们不能显示地将this指针写出来,因为这是编译帮我们做的事情。

2024-05-19 15:50:54 259 1

原创 C++ --- new和delete

new/delete和malloc/free基本类似,不同的是,new/delete申请释放的是单个元素的空间,new[ ]/delete [ ]申请释放的是连续的空间,此外,malloc申请失败会返回NULL,而new申请失败会抛异常。

2024-05-17 18:32:10 1458 1

原创 C++ --- 拷贝构造

调用func2函数结束时,对象d的生命周期就结束了,不是d赋值给了d1,而是在结束前执行return语句时,就调用了Date的拷贝构造复制了一个临时对象,然后把它赋值给了d1。只是将指针的地址赋值给新对象,两个对象共用一块地址空间,共享数据,其中一个对象修改数据,另一个数据也会被修改,不安全。重新开辟了一块地址空间,内容格式与拷贝对象一模一样,且两者完全独立的,分别拥有自己的数据和资源,其中一个对象修数据被修改,另一个数据不会被修改。就是用已存在的类类型对象创建新对象时由编译器自动调用 d2(d1)。

2024-05-14 18:29:17 281 2

原创 C++ --- 析构函数

析构函数(destructor)是一个特殊的成员函数。它与构造函数功能相反,主要功能是完成类的一些资源清理工作(并不是指删除对象),而是使这部分内存可以被程序分配给新对象使用。

2024-05-10 20:26:24 436

原创 C++ --- 构造函数

编译系统是根据函数调用的形式去确定对应的函数。构造d1有3个参数,那么就调用对应参数类型和参数个数的构函数是:Date(int year, int month, int day )。2.构造函数中的赋值是在对象创建后对已经初始化的成员变量进行赋值。3.构造函数是建立对象时由系统自动执行的,而且只执行一次。1、我们不写,编译器自动生成的构造函数。重载方法:构造函数的名称相同,参数不同。3、我们自己写的全缺省的构造函数。提供不同的初始化的方法,供用户选用。2、我们自己写的无参的构造函数。

2024-05-09 20:39:59 334 2

原创 C++ --- 静态成员变量/函数

全局变量的值为各个函数所共享,各处都可以自由地修改全局变量的值,(全局变量的安全性得不到保证)很有可能失误,从而导致程序错误。1.静态成员变量是在所有对象之外单独开辟空间,在一个类中有一个或多个静态成员变量,所有的对象共享这些静态成员变量,都可以引用它。2.用类来定义一个对象之后,静态成员变量和静态成员函数也属于对象,所以,也允许通过对象名调用静态成员函数。2.在编译期初始化,那么在实际运行期都是确定的结构和逻辑,将带来更高的性能,因为编译器完成了一定的工作。在编译的时候进行初始化。

2024-05-08 20:50:05 144 2

原创 C++ --- 运算符重载

域运算符和sizeof运算符的运算对象是类型,而不是变量或一般表达式,不具备重载的特征。成员访问运算符和成员指针访问运算符不能重载是为了保证访问成员的功能不能被改变。返回值类型:T&,返回引用可以提高返回的效率,有返回值目的是为了支持连续赋值。C++不允许用户自己定义新的运算符,只能对已有的C++运算符进行重载。否则,就改变了运算符参数的个数。(或称 二元运算符),双目运算符有两个操作数,通常在运算符的左右两侧。1.重载不能改变运算符运算对象(即操作数)的个数。3.重载不能改变运算符的结合性。

2024-05-07 21:03:12 1072

原创 《数据结构》二叉树--C语言

树是一种非线性的数据结构,它是由n(n>=0)个有限结点组成一个具有层次关系的集合。把它叫做树是因为它看起来像一棵倒挂的树,也就是说它是根朝上,而叶朝下的。根结点,根节点没有前驱结点。除根节点外,其余结点被分成是一棵结构与树类似的子树。每棵子树的根结点有且只有一个前驱,可以有0个或多个后继。树是递归定义的。

2023-11-15 16:51:28 120 6

原创 栈和队列---C语言

栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。eg:入栈时1 2 3 4 出栈时4 3 2 1压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。出栈:栈的删除操作叫做出栈。出数据也在栈顶。队列:就是一个简单的单向链表。它遵循FIFO(First In First Out)原则。

2023-09-19 17:23:27 107 5

原创 函数传参和函数指针

因为对一个二维数组,可以不知道有多少行,但是必须知道一行多少元素。

2023-07-13 15:22:38 97 1

原创 指针数组和数组指针

(a + 1)等同于a[1],第一个是4,a的类型是int [5],&a的类型就是int(*)[5],是个数组指针。所以给int(*)[5]类型加一,相当于加了一个int [5]的长度。也就是这个指针直接跳过了a全部的元素,直接指在了刚好越界的位置上,然后转换成了int *后再减一,相当于从那个位置向前走了一个int,从刚好越觉得位置回到了1的地址处,所以第二个是1。p先和*结合,说明p是一个指针变量,然后指着指向的是一个大小为10个整型的数组。,所以 &arr+1 相对于 &arr 的差值是40。

2023-07-12 12:15:32 87 1

原创 数据在内存中的存储--内功修炼

什么是大端,什么是小端就比如说0x11223344 这样一个数,其高位是11,低位是44.大端(存储),是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中;小端(存储),是指数据的低位保存在内存的低地址中,而数据的高位,保存在内存的高地址中;为什么会有大端和小端为什么会有大小端模式之分呢?这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8 bit。但是在C语言中除了8 bit 的 char之外,还有16 bit的 short。

2023-06-02 17:07:40 124 8

原创 扫雷--c语言

扫雷这个游戏大家都一定玩过,那今天我们一起来实现它。首先我们先了解其思路1.我们得有两个一模一样的棋盘,一个棋盘来布置我们的雷,相当于幕后黑手,叫mine。另一个棋盘来显示我们排除出雷的信息,干的都是露脸的活,叫show。我们所展示的棋盘是一个的棋盘,但我们在设计的时候要把它设计成的棋盘,为的是防止在以后找雷的时候数组越界。2.对幕后黑手mine数组操作放雷,为了随机我们用rand()函数。3.找雷,两个数组都要用上,一个将扫到雷的信息存储,一个用来展示。

2023-05-13 15:00:08 86 3

原创 三子棋--c语言

为了代码的可读性,分别将它们写在了三个项目中,分别是。没有玩家下棋难,只需要找到棋盘上空的位置落子。

2023-05-10 16:04:39 84 3

原创 二分查找法-函数形式

【代码】二分查找法-函数形式。

2023-04-23 16:18:50 118 2

原创 水仙花数的计算

15%10=5 可以这样:15=10+5,10%10=0,就剩下一个5,十位就出来了。水仙花数重点就是把它的个位,十位,百位求出来,循环体部分大家都会就不写了。153=150+3 ,150%10=0,就剩下一个3,个位就出来了。可以这样:153/10按照整数除法结果是 15。就拿153来说,(153/10)%10。就拿153来说,153%10的结果是。就拿153来说,153/100=整数除法计算就可以了。

2023-04-11 22:32:30 572 2

原创 操作符-除法和取余

b.若两个操作数中有一个是浮点数,执行的是小数除法。a.若两个操作数都是整数的话,执行得整数除法。b2.(被除数为正,除数为负)a.两个操作数都是整数。b1.(被除数为负数)1.除法--得到的是商。

2023-04-11 22:16:38 111 1

原创 将来目标计划

我是一名学习计算机的大一学生,上学期学过c的课程。熟悉掌握c语言,为以后学习c++打下基础。跟着老师好好学,按时完成作业,然后多敲代码。

2023-04-09 18:03:50 36 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除