随笔分类 -  C++

C++四种强制转换
摘要:C++的四种强制类型转换,所以C++不是类型安全的。分别为:static_cast , dynamic_cast , const_cast , reinterpret_cast为什么使用C风格的强制转换可以把想要的任何东西转换成合乎心意的类型。那为什么还需要一个新的C++类型的强制转换呢?新类型的强... 阅读全文
posted @ 2017-03-08 17:40 lantx 阅读(319) 评论(0) 推荐(0)
c++知识点总结(1)
摘要:重载: 只有在 同一类定义中的同名成员函数才存在重载关系 ,主要特点是 函数的参数类型和数目有所不同 ,但 不能出现函数参数的个数和类型均相同 ,仅仅依靠返回值类型不同来区分的函数,这和普通函数的重载是完全一致的。另外,重载和成员函数是否是虚函数无关覆盖: 在派生类中覆盖基类中的同名函数... 阅读全文
posted @ 2017-03-08 16:30 lantx 阅读(178) 评论(0) 推荐(0)
二叉查找树
摘要:什么是二叉查找树在数据结构中,有一个奇葩的东西,说它奇葩,那是因为它重要,这就是树。而在树中,二叉树又是当中的贵族。二叉树的一个重要应用是它们在查找中的应用,于是就有了二叉查找树。 使二叉树成为一颗二叉查找树,需要满足以下两点:对于树中的每个节点X,它的左子树中所有项的值都要小于X中的项;对于树中的... 阅读全文
posted @ 2017-03-06 11:29 lantx 阅读(231) 评论(0) 推荐(0)
平衡二叉树
摘要:一步一步写平衡二叉树(AVL树)转载:http://www.cppblog.com/cxiaojia/archive/2012/08/20/187776.html 平衡二叉树(Balanced Binary Tree)是二叉查找树的一个进化体,也是第一个引入平衡概念的二叉树。1962年,G.M. ... 阅读全文
posted @ 2017-03-06 11:23 lantx 阅读(346) 评论(0) 推荐(0)
c++中常用的内存操作函数
摘要:1.malloc()函数,calloc()函数和free()函数malloc()函数和free()函数 malloc()函数原型:void *malloc(size_t size);malloc()函数用来内存分配,如果分配成功则返回指向被分配内存的指针(此存储区中的初始值不确定),否则... 阅读全文
posted @ 2017-03-05 08:54 lantx 阅读(2165) 评论(0) 推荐(0)
C++的const类成员函数
摘要:我们知道,在C++中,若一个变量声明为const类型,则试图修改该变量的值的操作都被视编译错误。例如,[cpp] view plain copy const char blank = ‘’; blank = ‘\n’; // 错误 面向对象程序设计中,为了体现封装性,通常不允许... 阅读全文
posted @ 2017-03-01 10:39 lantx 阅读(257) 评论(0) 推荐(0)
C++构造函数初始化列表与赋值
摘要:初始化和赋值对内置类型的成员没有什么大的区别,像任一个构造函数都可以。但有的时候必须用带有初始化列表的构造函数:(1) 成员类型是没有默认构造函数的类。若没有提供显式初始化时,则编译器隐式使用成员类型的默认构造函数,若类没有默认构造函数,则编译器尝试使用默认构造函数将会失败。(2) const成员或... 阅读全文
posted @ 2017-03-01 10:29 lantx 阅读(518) 评论(0) 推荐(0)
内存对齐
摘要:规则:1:数据成员对齐规则:结构(struct)(或联合(union))的数据成员,第一个数据成员放在offset为0的地方,以后每个数据成员存储的起始位置要从该成员大小或者成员的子成员大小(只要该成员有子成员,比如说是数组,结构体等)的整数倍开始(比如int在32位机为4字节,则要从4的整数倍地址... 阅读全文
posted @ 2017-02-27 15:30 lantx 阅读(215) 评论(0) 推荐(0)
火柴棍等式
摘要:题目要求如下:给你n根火柴棒,你可以拼出多少个形如“A+B=C”的等式?等式中的A、B、C是用火柴棒拼出的整数(若该数非零,则最高位不能是0)。用火柴棒拼数字0--9的拼法如图所示:注意加号与等号各自需要2根火柴棒如果A≠B,则A+B=C与B+A=C视为不同的等式(A、B、C>=0)n根火柴棒必须全... 阅读全文
posted @ 2016-09-29 13:51 lantx 阅读(396) 评论(0) 推荐(0)
数组实现链表及插入
摘要:自定义node结构体,实现简单的链表初始化及插入操作#include using namespace std;struct node{ int data; struct node *next;};int main () { struct node *head, *p, *q, *t; int n; ... 阅读全文
posted @ 2016-09-27 09:57 lantx 阅读(1226) 评论(0) 推荐(0)
数组模拟栈检测回文串
摘要:并不是使用c++中的数据结构stack,而是自己使用数组模拟栈的工作方式#include using namespace std;int main () { char a[100];// 字符串 char s[100];// 这是弄栈的 /*假设是a[6] 那么是0 1 2 3 4 5 mid 是 ... 阅读全文
posted @ 2016-09-26 21:16 lantx 阅读(157) 评论(0) 推荐(0)
排序算法汇总
摘要:桶排序#include using namespace std;int main () { int book[1001]; // 下标是0-1000 int temp; //用来临时存放读取的数 for (int i = 0; i > num; for (i... 阅读全文
posted @ 2016-09-26 20:50 lantx 阅读(144) 评论(0) 推荐(0)