喜欢美食, 旅行..
发布时间:2013-02-07 16:29:38
1. 意图将一个类的接口转换成客户希望的另外一个接口. Adapter 模式使得原本由于接口不兼容而不能一起工作的那些类可以一起工作.2. 面向对象设计原则最少知识原则, 即暴露在外的信息量最少越好, 例如 Adapter 实现时应该用私有的方式继承 Adaptee. 3. 适用性 * 你想使用一个已存在的类, 而它的.........【阅读全文】
发布时间:2013-02-07 12:06:52
1. 意图将抽象部分与它的实现部分分离, 使它们都可以独立变化, 相比继承而言有更大的灵活度.2. 面向对象设计原则好莱坞原则:别调用我, 我会调用你的. ( 防止依赖腐败, 只能让 Handle 调用 Body ). 3. 适用性* 你不希望在抽象和他的实现之间有一个固定的绑定关系. 例如这种情况可能是因为, 在程.........【阅读全文】
发布时间:2013-02-06 11:23:42
关于这个话题,在网上看一个哥们的博客写得挺清楚的,这里原文转载看到这个题目你可能会觉得奇怪,CRTP是The Curiously Recurring Template Pattern的缩写. 我们先来看一个简单的例子: template class CuriousBase { … }; .........【阅读全文】
发布时间:2012-12-18 18:23:24
这篇是网上一个哥们的总结, 个人觉得挺好, 原文地址:Windows内存管理的API函数数据所在的内存地址,内存最小存储单元是字节,在32位系统上使用32位数来表示内存地址.一共可以表示2^32次地址空间:32位可以使用4GB内存,那么地址空间就是0x00000000~0xFFFFFFFF物理内存:硬件系统中真实存在的存储空间称为物理内存.虚拟地址空间:windows内存管理知识:1.分段或分页内存管理2.物理地址和虚拟地址,虚拟地址空间.3.虚拟内存布局,内存分工,堆,栈.4.内存存取权限.5.标准C内存管理函数与windows内存管理API的关系. 内存保护属性和存取权限属性常量......【阅读全文】
发布时间:2012-12-16 23:17:05
这里只把我的视线作为一个例子来说明一下, 读者用自己的方法去实现也没问题.关于如何把自己的DLL导入到指定的进程,请参考我的另一篇博文[windows平台] 给进程注入代码 -- 导入DLL到指定进程的地址空间1. DLL 入口函数的相关逻辑在DLL加载的时候HOOK所有我们希望追踪的系统API.在DLL卸载的时候取消所有的HOOK.#include "hooksTable.h"BOOL APIENTRY DllMain( HMODULE hModule, &nbs......【阅读全文】