自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 资源 (3)
  • 收藏
  • 关注

转载 策略模式

策略模式目录策略模式模式动机模式定义模式结构时序图代码分析模式分析实例优点缺点适用环境模式应用模式扩展总结1. 模式动机完成一项任务,往往可以有多种不同的方式,每一种方式称为一个策略,我们可以根据环境或者条件的不同选择不同的策略来完成该项任务。在软件开发中也常常遇到类似的情况,实现某一个功能有多个途径,此时可以使用一种设计模式来使得系统可以灵

2015-12-11 22:26:47 392

转载 简单工厂模式

简单工厂模式( Simple Factory Pattern )目录简单工厂模式( Simple Factory Pattern )模式动机模式定义模式结构时序图代码分析模式分析实例简单工厂模式的优点简单工厂模式的缺点适用环境模式应用总结1. 模式动机考虑一个简单的软件应用场景,一个软件系统可以提供多个外观不同的按钮(如圆形按钮、矩形按钮

2015-12-11 22:25:34 318

原创 virtual关键字

virtual的使用依托于类。1、虚函数 被virtual修饰的成员函数称为虚函数。虚函数对于多态具有决定性的作用,有虚函数才能构成多态。我们知道,基类指针可以指向派生类对象(但是基类指针只能调用基类方法),但是派生类指针不能指向基类对象(为了避免派生类指针调用了基类中没有的派生类方法)。在基类中,被virtual修饰的成员函数(如print)在派生时,如果在派生类重写了该方法pri

2015-11-04 22:01:15 389

原创 STL学习笔记之traits技术

Traits技术详解 问题1:如何根据指针或者迭代器,获得指针或者迭代器所指对象的类型?? 例如:template  void func(Iterator iter)  {      //函数体  }  如果此时,要想在函数体中声明一个变量,变量的类型为迭代器所指对象的类型。 解决方法:利用模版函数的参数类型推导机制。即根据传入的参数类型来确定模

2015-09-02 11:33:43 430

原创 字符串最后一个单词长度

问题描述:计算字符串最后一个单词的长度,单词以空格隔开。输入:一行字符串,长度小于128。输出:整数N,最后一个单词的长度。样例输入:hello world样例输出:5/*2015年5月11日 12:24:38字符串最后一个单词的长度*/#include #include using namespace std;int main(){

2015-05-11 15:39:50 310

原创 STL之顺序容器

顺序容器包括以下几类:1、vector       可变大小数组,可以理解为广义的动态数组,如:typename *a = new typename [N] 。因为,数组是一组连续的存储单元,所以可以通过数组首地址+index来访问其中元素,也即使支持快速随机访问。在尾部之外的位置插入或者删除元素可能会很慢。 这是因为,插入或者删除都需要移动插入/删除位置之后的元素。·     vec

2015-04-23 12:40:47 397

原创 STL之迭代器失效

所谓迭代器失效,是指迭代器已经不是指向原来的位置,这总是出现在需要连续存储的容器中,如:vector,deque,string。拿vector来说,当需要插入或者删除元素时,如果原来的容量(capacity)不足以满足插入的需求,则必须重新分配一块内存,然后将vector对象中所有元素都搬新家,这必然会导致所有元素的迭代器都会发生变化(即原来迭代器失效)。这和动态数组是一样的。例如:#

2015-04-22 15:02:54 444

原创 将两个已排序的链表归并成一个链表(C++面试题)

题目:将两个已经排好序的链表组合成一个排序的链表。/* 归并排序的思想 时间:2015年4月8日 19:59:02*/#include #include using namespace std;typedef struct Node //模拟节点{ int data; struct Node * next;}NODE,* PNODE;class List{

2015-04-11 10:11:55 475 1

转载 C++ 继承派生类中的内存布局

今天在网上看到了一篇写得非常好的文章,是有关c++类继承内存布局的。看了之后获益良多,现在转在我自己的博客里面,作为以后复习之用。——谈VC++对象模型 (美)简.格雷 程化 译译者前言一个C++程序员,想要进一步提升技术水平的话,应该多了解一些语言的语意细节。对于使用VC++的程序员来说,还应该了解一些VC++对于C++的诠释。 Inside the C++ Object Model虽然

2015-04-10 11:40:12 647

原创 插入排序(C++实现)

插入排序主要适用于少量元素的排序。假定我们按从小到大的顺序排序,每次插入的时候,新插入的元素都要跟前面已经排好序的元素进行比较,直到第一次找到比它小的元素,则将要插入的元素插入到第一个比它小的元素后面。此排序方法,可以参考斗地主抓牌,我们总是习惯抓到一张牌的时候,按大小顺序排列好,这时候,我们一般从大的一头开始比较,直到找到合适的位置就插入。        插入排序的伪算法:INSERT_

2015-03-25 10:16:43 429 1

原创 const 类型修饰符

const是用来限定所指定的变量或者函数不可作修改。1)修饰变量当const用来修饰变量的时候,const所指定部分不可修改。    a. 修饰常规变量  如:const int a = 10;          int const a = 10;  // 这两种方式的效果一样,都是将a描述为常量,a的值在被赋初值后不可以修改。但是这和由宏定义的常量(如:#define N

2015-03-21 16:17:23 379

原创 C++ prime plus 第八章 函数探幽 习题

1、# include# includeusing namespace std;void fun(string tr,int & c,int num=0)//默认参数的设置必须在参数列表的最右端{ c++; for(int i=0; i  cout return;}int main(void){ string str="haha";

2014-12-19 21:10:44 332 1

23种设计模式(C++完整版)

23种设计模式(C++完整版),内有详细C++代码,程序员进阶好帮手。

2015-10-07

Memory Pool的设计哲学和无痛运用完整版本

Memory Pool的设计哲学和无痛运用完整版本,侯捷先生的大作,现在贡献出来给大家下载。

2015-09-06

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除