摘要:动态链接库Dynamic-Linked Lib 的创建与使用 动态链接库(Dynamic Link Library 或者 Dynamic-link Library,缩写为 DLL),是微软公司在微软Windows操作系统中,实现共享函数库概念的一种方式。这些库函数的扩展名是 ”.dll"。 动态链接
阅读全文
随笔分类 - C Pluc Plus
摘要:程序是计算机指令的几何,以文件的形式存在磁盘上。进程被定义为正在运行的程序的实例,是在进行地址空间中的一次执行活动。一个程序可以对应多个进程,如可以通过打开多个Word程序,每个word的应用就是一个进程。同时一个进程可以访问多个程序。进程是系统资源申请、调度、运行的独立单位。程序不占用系统的运行资
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 2.7 Proxy 2016-07-18 (www.cnblogs.com/icmzn) 模式理解 1. Proxy 代理模式 为其他对象提供一种代理可以间接控制这个对象的访问。 又称为“委托模式”,其他设计模式也是在代理模式的基础上扩展的
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 2.6 Facade 2016-07-22 (www.cnblogs.com/icmzn) 模式理解 1. 门面模式 facade ,又称为外观模式 要求所有外部与一个子系统的所有通信必须通过一个“统一的对象”进行。这个对象就是子系统的“门
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 2.5 Factory 2016-07-18 (www.cnblogs.com/icmzn) 模式理解 1. Flyweight 模式,即享元(共享单元)模式 Flyweeight是拳击比赛中的特有名词,称为“特轻量级别”,则在设计模式中指
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 2.4 Composite 2016-07-22 (www.cnblogs.com/icmzn) 模式理解 1. Composite组合模式 又称为部分整体模式,主要用来描述部分与整体的关系。 将对象组合成树状结构以表示“部分-整体”的层次
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 2.3 Decorator 2016-07-22 (www.cnblogs.com/icmzn) 模式理解 1. Decorator 模式定义 一般可以分为4个角色 (1)Component抽象类:定义被装饰者的抽象行为或者特征。 (2)具
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 2.2 Adapter 2016-07-22 (www.cnblogs.com/icmzn) 模式理解 1. Adapter 定义 将一个类的接口变换为客户端所期待的另一种接口形式,使被适配者Adaptee能用用在目标target的环境中
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 2.1 Bridge 2016-07-22 (www.cnblogs.com/icmzn) 模式理解 1. Bridge模式的定义 将抽象与实现解耦,使两个可以独立的发生变化。桥接模式的重点在“解耦”。 一般桥接模式有以下四个角色 (1)“
阅读全文
摘要:目前主流编译器对C++11特性的支持情况 1. GCC编译器(从编译器GCC4.8.X的版本完全支持) (1)目前C++11特性,之前成为C++0X特性,从GCC4.3的后续版本中逐步对C++11进行支持。 (2)从官方信息可以看到,目前从完全对C++11特性进行支持的是从编译器GCC4.8.X的版
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 1.5 Prototype 2016-07-21 (www.cnblogs.com/icmzn) 模式理解 1. Prototype 原型模式定义 提供了类的自我复制的能力,即通过已有对象进行新对象的创建。因为原型模式实在内存中进行二进制流
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 1.4 Builder 2016-07-21 (www.cnblogs.com/icmzn) 模式理解 1. Builder 模式定义: 将一个复杂的对象的构建与他的表示分离,不同的构建过程可以创建不同的表示。 要包含四个部分 (1)抽象构
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 1.3 Singletion 2016-07-21 (www.cnblogs.com/icmzn) 模式理解 1. Singleton 模式定义: 该模式在设计中非常有用。 挡在开发中遇到一些对象实例是必须在系统内是唯一的的时候,则需要使用
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 1.2 AbstractFactory 2016-07-21 (www.cnblogs.com/icmzn) 模式理解 1. Factory method 定义 一个创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类实例化延迟到子类
阅读全文
摘要:23 DesignPatterns学习笔记:C++语言实现 1.1 Factory 2016-07-18 13:03:43 模式理解 1. Factory method 定义 一个创建对象的接口,让子类决定实例化哪一个类,工厂方法使一个类实例化延迟到子类。2. factory method 设计模式
阅读全文
摘要:DesignPatterns学习笔记:C++语言实现 (转载请注明出处:http://www.cnblogs.com/icmzn/p/5680784.html) 1. 创建型设计模式: (1)Facotry,工厂模式 (2)AbstractFactory,抽象工厂模式 (3)Singletion,单
阅读全文
摘要:可以参考侯捷编著的《STL源码剖析》 STL 中的map 与 hash_map的理解 1、STL的map底层是用红黑树存储的,查找时间复杂度是log(n)级别; 2、STL的hash_map底层是用hash表存储的,查询时间复杂度是常数级别; 3、什么时候用map,什么时候用hash_map? 这个
阅读全文
摘要:这是RTTI(运行阶段类型识别)的问题,c++有三个支持RTTI的元素: 1. dynamic_cast 操作符 如果可能的话,dynamic_cast操作符将使用一个指向基类的指针来生成一个指向派生类的指针;否则,该操作符返回空指针。这是最常用的 RTTI组件,它不能回答“指针指向的是哪类对象”这
阅读全文
摘要:使用Enum还是Enum Class? 根据Enum和Enum Class的特点,我们可以根据对常量类型的要求决定使用Enum还是Enum Class。 以下场景适合使用Enum: 常量类型用于内部表示,不用于显示名字。 常量值不需要提供附加的属性。例如只需要知道国家代码,而不需要获得国家的其它属性
阅读全文
摘要:1. class的virtual 与non-virtual的区别(1)virtual 函数时动态绑定,而non-virtual是静态绑定,前者是多态效果。(2)多态类的析构函数应该为virtual函数。2. #define后面的"\" #define后面的"\"是续行符,表示下面一行是紧接着当前行...
阅读全文
浙公网安备 33010602011771号