自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 收藏
  • 关注

原创 《Effective C++》读书笔记(六) 设计与声明(第二部分)

设计与声明 Designs and Declarations     条款22:将成员变量声明为private               Declare data members private.         将成员变量声明为public、protected和private有什么区别?乍一看反正都声明了,应该无所谓的。但是,面向对象编程(OOP)是一种特殊的、设计程序的概念性方法

2013-10-21 18:39:05 609

原创 双向循环链表的C++实现

双向循环链表的C++实现

2013-10-21 18:36:28 2405

原创 单向循环链表的C++实现

单向循环链表的C++实现

2013-10-21 18:32:10 5032

原创 双向链表的C++实现

双向链表的C++实现           双向链表与单向链表相比,各个结点多了一个指向前一个结点的指针。结构如图所示:           双向链表的结点定义如下: #ifndef SIMPLENODE_HPP #define SIMPLENODE_HPP template //再定义一个模板 写双链表 class DoubleNode { public:

2013-10-21 18:13:32 6912

原创 《Effective C++》读书笔记(五) 设计与声明(第一部分)

设计与声明 Designs and Declarations   条款18:让接口容易被正确使用,不易被误用                Make interfaces easy to use correctly and hard to use incorrectly.

2013-10-19 09:38:53 749

原创 单向链表的C++实现

单向链表的C++实现         链表作为一种基础的数据结构,在计算机科学中广泛应用。特别是在不支持连续存储的空间中,以及实现灵活的内存动态管理中,都能起到重要作用。链表在首尾端及附近的操作普遍优于一般数组array,而且支持在链表内部找到指定位置并插入和删除元素,没必要像数组一样移动一大串元素,而只是在内部对所改变的结点链接进行固定的几个改变即可;但在链表中搜寻元素要遍历链表需O(n)

2013-10-17 15:13:16 1126

原创 归并排序的STL源码浅析(富帅版)

123

2013-10-10 17:54:55 1010

原创 归并排序的C++实现(大众版)

123

2013-10-09 10:08:40 1086

原创 《Effective C++》读书笔记(四) 资源管理

资源管理 Resource Management     C++最常使用的资源就是动态分配内存,还有其他常见的资源,比如文件描述器、互斥锁、图形界面中的字型和笔刷、数据库连接、以及网络sockets。不论哪一种资源,重要的是,当不再使用它时,必须将它还给系统。否则,资源泄露等糟糕的事情就会接踵而至。并且,当发生异常,或者函数内多重回传路径,也可能维护人员没充分理解就改动软件等情况发生时,资源泄

2013-09-28 18:50:12 609

原创 两个栈实现一个队列

两个栈实现一个队列        从书中已经知道,栈(stack)是一种后进先出表;而队列(queue)是一种先进先出表。栈和队列的结构图如下。

2013-09-26 14:09:56 603

原创 两个队列实现一个栈

两个队列实现一个栈         从书中已经知道,栈(stack)是一种后进先出表;而队列(queue)是一种先进先出表。栈和队列的结构图如下。 那么将两个队列组合成一个栈,又该是怎样的?参考下图:

2013-09-26 14:08:05 605

原创 《Effective C++》读书笔记(三) 构造/析构/赋值运算 (第二部分)

构造/析构/赋值运算 Constructors,Destructors,and Assignment Operators

2013-09-16 22:39:39 511

原创 队列的基本操作

队列的基本操作           队列是一种先进先出(First In-First Out)的表。元素在最底端入队列,在最顶端出队列。队列的应用相当广泛,只要满足先进先出的特性就可以利用。比如我们日常排队打饭买票、不少高效算法运用队列、CPU资源竞争通过请求时间顺序排成一个队列等。队列在我们日常生活以及程序设计中都起到非常重要的作用。         队列的结构,如图所示:

2013-09-14 19:03:34 677

原创 栈的基本操作

栈的基本操作         栈是一种限制插入和删除操作只能在一个位置上进行的表,那个位置在栈顶。也被称为后进先出(Last In-First Out)表。栈的应用非常广泛。只要满足后进先出的特性就可以利用。比如判断符号是否成对出现、计算机中计算后缀表达式的值、中缀表达式转换为后缀表达式,以及多个经典算法中对于路径的搜索实现路径的保存等。其中,栈的一个最重要的应用,也是最经常使用的应用,就是

2013-09-14 19:02:37 710

原创 《Effective C++》读书笔记(二) 构造/析构/赋值运算 (第一部分)

构造/析构/赋值运算 Constructors,Destructors,and Assignment Operators   条款05:了解C++默默编写并调用哪些函数               Know what functions C++ silently writes and calls.        当我们写下一个empty class时,不包含任何我们声明的construc

2013-09-11 20:06:50 552

原创 《Effective C++》 读书笔记(一) 让自己习惯C++

让自己习惯C++ Accustoming Yourself to C++ 条款01:视C++为一个语言联邦                 View C++ as a federation of languages.         如今的C++,是一个同时支持过程形式(procedural)、面向对象形式(object-oriented)、函数形式(functional)、泛型形式(

2013-09-10 09:22:44 573

空空如也

空空如也

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

TA关注的人

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