- 博客(7)
- 收藏
- 关注
原创 二叉树
一、遍历二叉树1、前序遍历:根左右2、中序遍历:左根右3、后序遍历:左右根4、层序遍历:一层层#include"stdafx.h"#includeusing namespace std;templatestruct TreeNode{T _data;TreeNode* _left;
2017-11-08 00:51:58
127
转载 不能继承的类
设计一个不能被继承的类1.定义公有静态成员函数#includeusing namespace std;class A{public:static A* getA(int x){cout return new A(x);//这里用new,而直接调用是因为静态方法只能访问类的静态
2017-09-27 14:09:52
256
原创 继承
1.定义面向对象的继承就是:从一个类派生另外一个类,使父类的所有的特征在子类中自动可用。这个类可以声明一些类型,这些类型可以共享部分或全部以前所声明的类型,它也可以从超过一个的基类型共享一些特征。继承是面向对象复用的重要手段。通过继承定义一个类,继承类型之间的关系模型,共享共有的东西,实现各自本质的不同的东西。2.分类一.继承的关系及继承访问限定符
2017-09-27 13:52:47
213
原创 智能指针
一、Auto_ptr指针把Auto_ptr指针封装成一个类,指针出了Auto_ptr的作用域会通过析构函数自动释放。#include "stdafx.h"#include #include"Auto_ptr.h"using namespace std;templateint*p = new int;class Auto_ptr {public:Auto_pt
2017-09-26 20:19:41
163
原创 虚函数
虚函数一、重写发生的条件:1.不在同一作用域。2.函数名相等,参数相等,返回值相等。3.基类函数必须有virtual关键字。重写条件满足后,父类虚函数表中的父类虚函数fun()函数的地址,会被修改成子类虚函数fun()函数的地址,下一次去父类虚函数表调用的函数就是子函数的fun(),重写是构成多态最重要的一个条件。重写的过程看起来和隐藏很相似,其实不然,隐藏之后还是可以通过
2017-09-26 20:05:32
337
原创 内存对齐 位域
一、内存对齐许多计算机系统对基本类型数据在内存中存放的位置有限制,他们会要求这些数据的首地址的值是某个数k(通它为4或8)的倍数,这就是所谓的内存对齐,而这个k则被称为该数据类型的对齐模数。这种强制的要求一来简化了处理器与内存之间传输系统的设计,二来可以提升读取数据的速度。比如这么一处理,它每次读写内存的时候都从某个8倍数的地址开始,一次读出或写入8个字节的数据,假如软件能保证double型的
2017-09-26 16:13:02
263
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人