自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 为何mfc不使用 dynamic_cast这样的基指针想派生类指针的显示转换? .

为何mfc不使用(或较少使用) dynamic_cast 原因在于: dynamic_cast 在c++中,如果你希望将一个基指针转换成一个派生类指针,  1)一般情况下, 这个基指针本来就是一个派生类的指针. 当转换为派生类指针的时候,可以访问这个派生类的特有的函数或者成员变量. 2) 如果这个基指针本来就不是一个派生类的指针,那么访问这个派生类的函数或成员变量的时候

2012-02-20 18:55:09 830

原创 常见协议图解

数据链路层Mac帧:  网络层IP数据报:  网络层ARP/RARP数据报(Address Resolution Protocol/Reverse Address Resolution Protocol)ARP的基本工作原理如下:(1)每台主机都会根据以往在网络中与其他节点的通信,在自己的ARP缓存区(ARP Cache)中建立一个ARP列表,以表示网络中节

2012-02-19 00:25:31 860

原创 Http协议分析

HTTP(HyperText Transfer Protocol) HTTP 是一个应用层协议,它使用 TCP 连接进行可靠的传送。使用 HTTP 的 URL 的一般形式       http://:/ HTTP 的默认端口号是 80,通常可省略,也可以自己搭建http服务器指定端口。 HTTP主要特点: HTTP 是面向事务的客户服务器协议。 HTTP 1

2012-02-17 19:55:49 780

转载 SSL 握手过程

happyhippy作者:Silent Void出处:http://happyhippy.cnblogs.com/转载须保留此声明,并注明在文章起始位置给出原文链接。  一、SSL握手有三个目的:1. 客户端与服务器需要就一组用于保护数据的算法达成一致;2. 它们需要确立一组由那些算法所使用的加密密钥;3. 握手还可以选择对客户端进行认证。二、SSL握手

2012-02-17 19:10:14 671

转载 C++类中拷贝构造函数详解

a. C++标准中提到“The default constructor, copy constructor and copy assignment operator, and destructor are special member functions.[Note: The implementation will implicitly declare these member functions

2012-02-11 17:59:57 757

原创 Winsock IO模型之Overlapped模型

这个模型的基本思想是使用重叠数据结构一次投递一个或多个异步I/O请求。当提交的I/O请求完成之后,与之关联的重叠数据结构中的事件对象受信,应用程序便可使用WSAGetOverlappedResult函数获取重叠操作结果。这个和使用重叠结构调用ReadFile和WriteFile函数操作文件类似。    使用这个模型,必须要搞清楚以下这几个异步I/O函数:WSASocket,AcceptEx,W

2012-02-11 17:28:31 1961

转载 Code Review中的几个提示

Code Review中的几个提示陈皓 Code Review应该是软件工程最最有价值的一个活动,之前,本站发表过《简单实用的Code Review工具》,那些工具主要是用来帮助更有效地进行这个活动,这里的这篇文章,我们主要想和大家分享一下Code Review代码审查的一些心得。首先,我们先来看看Code Reivew的用处:Code reviews 中,可以通过大家的建

2012-02-10 23:26:09 715

转载 C++实现Behavioral - Visitor模式

表示一个作用于某对象结构中的各元素的操作。它可以在不改变各元素的类的前提下定义作用于这些元素的新的操作。“Represent an operation to be performed on the elements of an object structure. Visitor lets you define a new operation without changing the class

2012-02-10 14:35:50 619

转载 C++实现Behavioral - Template Method模式

在一个方法中定义一个算法的框架,并将该算法的某些步骤,延迟到子类实现。Template Method使得子类可以重新定义一个算法中的某些特定的步骤,而无需改变整个算法的结构。“Define the skeleton of an algorithm in an operation, deferring some steps to subclasses. Template Method lets

2012-02-10 14:12:39 765

转载 C++实现Behavioral - Strategy模式

也称为Policy模式。 定义一系列算法,把他们一个个封装起来,并且使他们可以相互替换。该模式使得算法可以独立于使用它的客户而变化。“Define a family of algorithms, encapsulate each one, and make them interchangeable. Strategy lets the algorithm vary independen

2012-02-10 14:04:26 517

转载 C++实现Behavioral - State模式

也称为Objects for States模式。 允许一个对象在其内部状态改变时改变其行为,从而使对象看起来似乎修改了类。“Allow an object to alter its behavior when its internal state changes. The object will appear to change its class.” – GoF 一个应用的行

2012-02-09 17:38:07 849

转载 C++实现Behavioral - Observer模式

也称为Dependents或Publish-Subscribe模式。 定义对象间的一种一对多的依赖关系,以便当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并自动更新。“Define a one-to-many dependency between objects so that when one object changes state, all its dependents

2012-02-08 18:13:18 603

转载 浅谈测试驱动开发(TDD)

背景一个高效的软件开发过程对软件开发人员来说是至关重要的,决定着开发是痛苦的挣扎,还是不断进步的喜悦。国人对软件蓝领的不屑,对繁琐冗长的传统开发过程的不耐,使大多数开发人员无所适从。最近兴起的一些软件开发过程相关的技术,提供一些比较高效、实用的软件过程开发方法。其中比较基础、关键的一个技术就是测试驱动开发(Test-Driven Development)。虽然TDD光大于极限编程,但测试驱动开

2012-02-08 17:46:19 583

转载 C++实现Behavioral - Memento模式

在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存其状态。这样以后就可以将该对象恢复到原先保存的状态。“Without violating encapsulation,capture and externalize an object’s internal state so that the object can be restored to this state late

2012-02-07 15:07:59 633

转载 C++实现Behavioral - Mediator模式

“Define an object that encapsulates how a set of objects interact. Mediator promotes loose coupling by keeping objects from referring to each other explicitly, and it lets you vary their interaction

2012-02-07 14:51:46 618

转载 C++实现Behavioral - Iterator模式

“Provide a way to access the elements of an aggregate object sequentially without exposing its underlying representation.”– GoF提供一种方法,以顺序访问一个聚合对象中的元素,而又不暴露该聚合对象之内部表示。 An aggregate object such

2012-02-06 17:16:57 1151

转载 C++实现Behavioral - Interpreter模式

在软件构建过程中,如果某一特定领域的问题比较复杂,类似的模式不断重复出现,如果使用普通的编程方式来实现将面临非常频繁的变化。在这种情况下,将特定领域的问题表达为某种语法规则下的句子,然后构建一个解释器来解释这样的句子,从而达到解决问题的目的。 “Given a language, define a represention for its grammar along with an i

2012-02-06 16:53:08 1087

空空如也

空空如也

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

TA关注的人

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