随笔分类 - C++
摘要:树是一种递归定义的数据结构,如果树中节点的各子树从左到右是有次序的,不能互换,则称该树为有序树,否则叫无序树。 关于树的节点: 节点拥有的子树的个数叫做节点的度 如果度为0,那么该节点叫做叶节点或终端节点,除了根节点外的分支节点称为内部节点 树的度是各节点度的最大值。节点的子树的根称为该节点的子节点
阅读全文
摘要:栈是一种受限的线性表,将允许插入和删除的操作的一端称为栈顶,另一端称之为栈底,向栈中插入元素叫入栈,删除元素叫出栈。栈被称为是后进先出的线性表(LIFO) 顺序栈 顺序存储,即使用一段连续内存空间依次存储栈中数据。这里通过一维数组动态分配内存的方式保存数据 定义 代码如下: #define Init
阅读全文
摘要:在链式描述中,线性表的元素在内存中的存储位置是随机的,每个元素都有一个明确的指针或链指向下一个元素的位置 chain类 在此使用单向链表实现了线性表,其中最后一个节点的指针域为NULL,即它用单向链接的一组节点实现线性表 template<class T> class chain : public
阅读全文
摘要:线性表也称有序表,其每一个实例都是元素的一个有序集合 抽象类linearList 一个抽象类包含没有实现代码的成员函数,这样的成员函数称为纯虚函数,用数字0作为初始值来说明 template<class T> class linearList { public: virtual ~linearLis
阅读全文
摘要:复习C++ 类 自定义数据类型最灵活的方式就是使用C++的类结构 现在定义一个货币类型Currency: enum signType{PLUS,MINUS}; class Currency { public: Currency(signType theSign = PLUS, unsigned lo
阅读全文
摘要:复习C++的核心知识 函数与参数 传值参数、模板函数、引用参数、常量引用参数 传值参数 int abc(int a,int b,int c) { return a + b * c; } a、b、c是函数abc的形参,下面语句中调用函数abc: z = abc(2,x,y); 2、x、y就是分别于a
阅读全文
摘要:模板编程可称范型编程,是一种忽视数据类型的编程方式,这样的好处是什么?且看下面一个例子: 简单使用 求解最值问题,返回两个值中的较大值: int Max(int a, int b) { return a>b?a:b; } double Max(int a, int b) { return a>b?a
阅读全文
摘要:Capstone是一个反汇编框架,提供了一个简单、轻量级的API接口,可透明地处理大多数流行的指令体系,包括x86/x86-64、ARM及MIPS等。Capstone支持C/C++和Python,并且可以在很多操作系统上运行。 python安装capstone: pip3 install capst
阅读全文
摘要:构建工具解析二进制文件,基于libbfd实现,提取符号和节 BFD库 文档参考: LIB BFD, the Binary File Descriptor Library BFD及Binary File Descriptor,为读取和解析所有二进制格式提供了一个公共接口,该库也提供了各种体系结构的编译
阅读全文

浙公网安备 33010602011771号