C/C++ C++中的多态:virtual 关键字 面向对象的三大基本特征:封装、继承和多态。类对象通过 public/private/protected 关键字实现对象的封装,封装后通过继承实现多样性,而这个多样性又需要通过多态来完成。 假设要实现一个攻... 04 月 08 日157评论 阅读全文
C/C++ C++类中 const 类型成员变量的初始化 const 修饰的变量是不可更改的,在 C++ 11 标准中可以使用以下方式初始化: [crayon-6823e2ba32d9a660101979/](更多…) 04 月 08 日509评论 阅读全文
C/C++ 面试题:C++中 malloc/free/new/delete/new[]/delete[] 的差别 一、几者的区别 malloc/free 是 c 语言中分配内存空间的函数,malloc 创建空间,free 释放空间。 new/delete 是 c++中分配内存的操作符,new 创建空间,delete 删除空间。 n... 04 月 07 日181评论面试 阅读全文
C/C++ 指针数组、数组指针和函数指针 以下数据声明都代表什么含义: float(**def)[10]; double*(*gh)[10]; double(*f[10])(); int*((*b)[10]); long (*fun)int;... 04 月 07 日142评论面试 阅读全文
数据结构和算法 数据结构之树:二叉树的实现 相对于栈和链表等数据结构来说,树有着更复杂的结构。正如我们平常生活中看到的树一样,它有很多分支,而且分支上面还会有分支。 树的用途十分广泛,最常见的树是二叉树,衍生了很多类型的树,红黑树,搜索树等等,... 03 月 25 日850评论树 阅读全文
C/C++ 链表的遍历和反转 一、链表的遍历 链表的遍历算是十分简单了,从头到尾获取 next 指针的值,如果 next 不为 0,一直打印。 [crayon-6823e2ba33807428208882/] 这是一个链表和双向链表都可以使... 03 月 25 日275评论编程语言 阅读全文
数据结构和算法 数据结构之列表:双向链表的实现 双向链表是链表的一个分支,相比单向链表来说多了个一个前向指针 pre,指向当前节点的前一个节点,查找起来更为灵活。 二、链表节点实现 双向链表的节点可以继承单向链表的节点,添加一个 pre 成员即可。两者声... 03 月 25 日297评论树 阅读全文
数据结构和算法 数据结构之链表 (一):单向链表 一、单向链表 1.1 单向链表 链表是一种线性结构,通过一个链把所有的节点都链起来,因此叫做链表。它和数组最大的不同是:数组的内存是连续的,而链表不是。数组支持随机读写,但是插入和删除麻烦,链表不支持... 03 月 25 日354评论链表 阅读全文
数据结构和算法 数据结构之队列:队列的实现 队列是一种先进先出的数据结构,因和平常生活中的排队流程一样因此被称为队列。操作逻辑和栈刚好相反。 常用操作: enqueue: 元素入队 dequeue: 首元素出队 size: 返回队列中元素的个数... 03 月 25 日170评论树 阅读全文