- 博客(11)
- 收藏
- 关注
原创 归并排序
总体思想为:先将一整个数组分成若干个“小数组”,之后在每个“小数组”内分别排序,最后进行“小数组”的归并,最终归并为大数组。实现方法为:利用函数递归将大数组拆分为小数组,之后进行排序,排序后通过一个临时数组实现两个数组的归并(即两个数组分别比较,哪个数组的当前数据小,就把哪个数组的数据先拷贝进临时数组)最终通过调用memcpy函数来将临时数组的数据拷贝进原数组实现归并。以下为代码实现:......
2022-06-10 18:36:20
161
原创 派生类继承时的作用域
可以这么理解:派生类的作用域嵌套在其继承的基类的作用域之中,类似于下图: 名字冲突与继承: 使用基类指针(或引用)时默认指向外层,如果遇到了加上virtual关键字的成员函数就会优先指向内层。 使用派生类的指针(或引用)时,默认指向内层,若内层内没有该成员则会向外层查找。 使用派生类对象来访问成员函数时,派生类成员函数会覆盖掉同名的基类函数。 ...
2022-03-19 10:18:05
290
原创 顺序表的相关函数试做(含注释)
含注释,有不足的地方,感谢指正! #include<stdio.h> #include<stdlib.h> typedef struct vector { int* data; int size, length; }vector;//创建并重定义vector节点 vector* init(int n)//创建大小为n的顺序表 { vector* vec = (vector*)malloc(sizeof(vector)); vec->data = (int*)m.
2022-02-05 16:36:28
606
原创 C++对象与变量
目录 什么是对象: 名字的作用域 变量声明和定义的关系 初始化 默认初始化 标识符 C++关键字 什么是对象: 通常情况下,对象是指一块能存储数据并且具有某种类型的内存空间。 一些人仅在与类有关的场景下才使用 “对象”这个词。另一些人则已把命名的对象和未命名的对象区分开来,他们把命名了的对象叫做变量。还有一些人把对象和值区分开来,其中对象指能被程序修改的数据,而值(value)指只读的数据。 名字的作用域 不论在程序的什么位置,名字都会指向一个特定的实体:变...
2022-01-30 15:29:30
2175
原创 动态内存函数
在例如链表创建时,或遇到一些需要动态的改变空间大小的情况时就需要用到动态内存函数,通过动态内存函数可以方便的手动开辟/释放内存空间,防止内存泄漏。 在看动态内存函数之前,需要先了解内存的分配情况。 如图: 栈区中一般用于存放局部变量和函数的形参 静态区中则用于存放全局变量和静态变量 而堆区就是用于动态内存开辟的。 动态内存分配主要依靠这四个函数: void* malloc (size_t size); //size_t size放的是开辟的内存数(字节) 由于...
2022-01-22 18:10:02
437
原创 关于函数回调的理解
回调函数就是一个通过函数指针调用的函数。 如果你把函数的指针(地址)作为一个参数传递给另一个函数, 当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。 回调函数不是由函数的实现方直接调用,而是在特定的事件或条件发生时 由另外一方直接调用的,用于对该事件或条件进行响应。 看的有点晕没事,举个例子: 以下是一个最原始的简单计算器代码: #include<stdio.h> int Add(int x, int y) { int z = x...
2022-01-18 14:53:41
621
原创 对于指针的理解
目录 什么是指针/地址? 指针的常见类型: 常量指针: 指针变量的定义方法: 指针所需占用的空间 指针类型的意义: 地址有关常识 指针与数组 什么是指针/地址? 内存被划为很多格子(内存单元) 【】0 每个格子都有一个编号 【】1 32位指的是32根地址线—物理线-通电后有正负电-1/0 【】2...
2022-01-17 13:39:46
639
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅
3