自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 工作积累之Mediator 模式的理解

Mediator的意思是中介者、调节者、传递物,顾名思义,这个模式在程式中必然负担一个中介、调节、传递的工作。物件导向设计中,每个物件所负担的工作尽可能的简单明了,鼓励物件将工作分布至其它物件上,让一群工作属性相同的物件得以共同合作,即所谓高聚合性,以增加物件的可重用性。然而在组织物件工作的同时,物件彼此之间可能知道彼此的存在,并相互依赖,这就使得物件之间的耦合性相对的提高,最差的情况下,

2012-05-29 23:17:29 461

转载 走进内心深入的活法

一、空白也是一种色彩  佛在菩提树下大彻大悟,我在灶台旁茅塞顿开,世界上并非所有的事情都值得全心全意去做,适当的空白也是一种色彩。  我花很长时间吃一枚很小的水果,我用一上午读一本很久没有读完的闲书,我整整一天都穿着睡衣在房间里游来荡去。有时,我就这样悠闲地度日,因为我发现事业固然是我必须营造的圣殿,但在这个圣殿的后面还应该有一个花园。  男人们忙忙碌碌,争取金钱和地位,沉溺于琐事

2012-05-29 17:58:21 1403

原创 总结与反思

如何过一天才算有意义呢?对照陶行知先生的“每日四问”反思自己:我的身体有没有进步?我的学问有没有进步?我的工作有没有进步?我的道德有没有进步?

2012-05-29 16:16:25 351

原创 工作积累之二维数组的理解

在多数情况下,C++将数组名视为数组的第一个元素的地址;一种例外情况是,将sizeof操作符用于数组名时,此时将返回整个数组的长度(单位为字节)。如:double wages[3];double *pw = wages;size of wages array = 24size of pw pointer = 4C++允许将指针和整数相加,加1的结果等于原来的地址值加

2012-05-28 18:27:29 952

转载 Amazon云计算平台AWS推动者:Werner Vogels

Amazon云计算平台AWS(Amazon Web Services),为很多公司提供了基础云服务。Dropbox、Instagram、Quora、Foursquare、Reddit、Heroku这些互联网新星能耀眼上升,AWS厥功至伟;它让有想法、有技术的小团队,以低价获得世界级的运营服务,负担得起用户迅速增长的压力。既然AWS如此重要,那么不得不提及Amazon CTO

2012-05-24 10:17:19 1404

原创 工作积累之Iterator模式理解

GOF给出的定义为:提供一种方法访问一个容器(container)对象中各个元素,而又不需暴露该对象的内部细节。从定义可见,迭代器模式是为容器而生。再看STL:其中的容器提供迭代器,算法使用迭代器。模式UML图:对容器对象的各个元素的访问必然涉及到遍历算法,如果单单是为了不暴露该对象的内部细节,可以在容器对象中实现遍历算法,提供遍历自身的接口,但是为什么不这么做呢? 在

2012-05-23 17:50:00 485

转载 STL之迭代器的类型介绍

STL 主要是由 containers(容器),iterators(迭代器)和 algorithms(算法)的 templates(模板)构成的.       对应于它们所支持的操作,共有五种 iterators(迭代器)。           input         output              \            /

2012-05-14 15:15:32 1237 1

原创 思考一些基本概念(持续更新中)

一、构造函数为什么不能为虚函数:1、所谓虚函数,也就是根据对象的动态类型决定调用哪个函数。  2、构造函数是在对象完全构造之前运行的,换句话说,运行构造函数前,对象还没有生成,更谈不上动态类型了。 这样看,构造函数不可能是虚函数。二、函数模板函数模板是一种不说明某些参数的数据类型的函数。例如,下面定义了一个可对任何类型变量进行操作(求绝对值)的函数模板:temp

2012-05-14 10:58:11 498

翻译 橡皮筋技术实现之双缓存

缓存的定义:屏幕上所绘制的图形都是由像素组成的,每个像素都有一个固定的颜色或带有相应点的其他信息,如深度等。因此在绘制图形时,内存中必须为每个像素均匀地保存数据,这块儿为所有像素保存数据的内存区就叫缓冲区,又叫缓存(buffer).不同的缓存可能包含每个像素的不等位的数据,但在给定的一个缓存中,每个像素都被赋予相同数位的数据。双缓存的定义:在基于缓冲区的橡皮筋技术中有两个缓存,一个称为

2012-05-14 09:35:50 2474

转载 工作积累之malloc与new的区别

1,malloc与free是C++/C语言的标准库函数,new/delete是C++的运算符。它们都可用于申请动态内存和释放内存。2,对于非内部数据类型的对象而言,光用maloc/free无法满足动态对象的要求。对象在创建的同时要自动执行构造函数,对象在消亡之前要自动执行析构函数。由于malloc/free是库函数而不是运算符,不在编译器控制权限之内,不能够把执行构造函数和析构函数的任务强加于m

2012-05-11 09:46:17 365

转载 Socket与TCP、UDP

对于TCP协议我不想说太多东西,这属于大学课程,又涉及计算机科学,而我不是“学院派”,对于这部分内容,我觉得作为开发人员,只需要掌握与程序相关的概念就可以了,不需要做太艰深的研究。我们首先知道TCP是面向连接的,它的意思是说两个远程主机(或者叫进程,因为实际上远程通信是进程之间的通信,而进程则是运行中的程序),必须首先进行一个握手过程,确认连接成功,之后才能传输实际的数据。比如说进程A想将

2012-05-08 14:39:47 422

原创 工作积累之线程同步

工作中需要在一个线程A中控制另外一个线程B的运行、暂停和取消暂停(继续运行)、停止,涉及到线程同步问题;以前需要线程同步时都是从网上找现成的代码,从未自己认真研究过其中的原理,今天就认真的总结一下。有关线程同步互斥的控制方法,可以参考上一篇文章,这里直接叙述实现的代码。实现上述的同步,使用了两个事件(Event)和两个互斥量(Mutex),分别为:/** Events 事件 */ H

2012-05-07 18:07:37 414

转载 临界区,互斥量,信号量,事件的区别

四种进程或线程同步互斥的控制方法1、临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。 2、互斥量:为协调共同对一个共享资源的单独访问而设计的。 3、信号量:为控制一个具有有限数量用户资源而设计。 4、事 件:用来通知线程有一些事件已发生,从而启动后继任务的开始。 临界区(Critical Section)保证在某一时刻只有一个线程能访

2012-05-07 16:41:12 1172

转载 开源库总结

开源C++库必须具有以下特点:必须是成熟的产品、跨平台的产品、相对通用的库。   一、通用标准类   STL:C++标准模板库,呵呵,它也是开源的嘛。   boost:C++准标准库,它是强大地,江湖称之"千锤百炼"。   deelx (轻量级的正则表达式解析类库,国产),boost里有强大的正则表达式解析库,但如果你只想要一个表达式解析,不想要拖上庞大的boost

2012-05-03 11:40:16 643

VS2008CrackForWindows7Plus.7z

可以让vs2008用起来更顺畅

2022-01-04

当当网笔试题

2012年的最新的当当网笔试题C/C++

2011-11-08

深入浅出设计模式--模式详解

这本书值得初学的人好好看看。详细的描述了GoF的23个设计模式,惟一的缺点是没有对模式进行分类。

2011-01-29

空空如也

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

TA关注的人

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