摘要: 一、生成dll文件(VS2010 Win32 程序)CreateDll.h// 下列 ifdef 块是创建使从 DLL 导出更简单的// 宏的标准方法。此 DLL 中的所有文件都是用命令行上定义的 CREATEDLL_EXPORTS// 符号编译的。在使用此 DLL 的// 任何其他项目上不应定义此符号。这样,源文件中包含此文件的任何其他项目都会将// CREATEDLL_API 函数视为是从 DLL 导入的,而此 DLL 则将用此宏定义的// 符号视为是被导出的。#ifdef CREATEDLL_EXPORTS#define CREATEDLL_API __declspec(dllexpor 阅读全文
posted @ 2013-07-19 22:41 慧由心生 阅读(5740) 评论(4) 推荐(1) 编辑
摘要: 一、为什么需要dll代码复用是提高软件开发效率的重要途径。一般而言,只要某部分代码具有通用性,就可将它构造成相对独立的功能模块并在之后的项目中重复使用。比较常见的例子是各种应用程序框架,如ATL、MFC等,它们都以源代码的形式发布。由于这种复用是“源码级别”的,源代码完全暴露给了程序员,因而称之为“白盒复用”。“白盒复用”的缺点比较多,总结起来有4点。暴露了源代码;容易与程序员的“普通”代码发生命名冲突;多份拷贝,造成存储浪费;更新功能模块比较困难。实际上,以上4点概括起来就是“暴露的源代码”造成“代码严重耦合”。为了弥补这些不足,就提出了“二进制级别”的代码复用。使用二进制级别的代码复用一定 阅读全文
posted @ 2013-07-19 18:52 慧由心生 阅读(15136) 评论(0) 推荐(0) 编辑