摘要:
首先纠正国人的错误翻译,Responsibility 虽然字典里翻译为职责,然而确是由Response派生出来的词,结合此模式的原意,故此处应该翻译为响应更合适,或者说,垃圾字典里至少也应添加"响应"作为另一中文词.软件领域中的设计模式为开发人员提供了一种使用专家设计经验的有效途径。设计模式中运用了面向对象编程语言的重要特性:封装、继承、多态,真正领悟设计模式的精髓是可能一个漫长的过程,需要大量实践经验的积累。最近看设计模式的书,对于每个模式,用C++写了个小例子,加深一下理解。主要参考《大话设计模式》和《设计模式:可复用面向对象软件的基础》两本书。 响应链模式:使多个对象 阅读全文
摘要:
作为一个经验丰富的C/C++程序员, 肯定亲手写过各种功能的代码, 比如封装过数据库访问的类, 封装过网络通信的类,封装过日志操作的类, 封装过文件访问的类, 封装过UI界面库等, 也在实际的项目中应用过, 但是回过头仔细想想,其实以前自己写过的这些代码,只能是在特定的项目或者特定的环境中使用, 对于自己来说, 在不同的项目中应用, 只需要复制代码, 改改也就可以了, 因为自己写的代码自己很熟悉。问题是, 你封装的这些库, 在给别人使用的时候, 别人用起来是否很方便, 跨平台方面是不是也很通用, 性能是不是足够的好, 是不是支持多线程, 功能是不是也足够强大,可以适用于各种不同的需求。如果你上 阅读全文
摘要:
Windows提供了多组支持多线程的应用程序接口(API)函数。许多读者已经对Windows提供的多线程函数有一定程度的了解,但是对于那些不熟悉这些的读者,本章提供了这些函数的概述。记住,Windows提供了许多其他的基于多线程的函数,这些函数需要您自己去探索。为了使用Windows的多线程函数,必须在程序中包含<Windows.h>。3.4.1 线程的创建和终止Windows API提供了CreateThread()函数来创建一个线程。其原型如下所示:HANDLE CreateThread(LPSECURITY_ATTRIBUTES secAttr,SIZE_T stackSiz 阅读全文