有些时候,我们想写自己的函数库以避免重复写代码,此文介绍如何使用Visual Studio编写自己的动态链接库。

0,实验环境说明:

集成开发环境:Visual Studio 10.0

操作系统: Windows 7

语言:C/C++

1,编写自己的DLL

我们分两部分介绍如何完成编写自己的DLL。

1.1,环境搭建

介绍如何使用Visual Studio建立一个DLL工程,已经额外的配置。

首先,建立一个dll的空工程,如下图所示:

添加两个文件,一个头文件(mydll.h),一个源文件(mydll.cpp),文件名根据自己的需要命名,这里并不需要写死文件名。

特别注意项目属性中是否存在类似如下图所示的内容,若无红框标记的宏,请添加合适的宏,例如MYDLL_EXPORT。

1.2,代码说明

向.h文件中添加如下内容:

#ifndef __MY_DLL_H__
#define __MY_DLL_H__
#if (defined WIN32 || defined _WIN32 || defined WINCE) && defined MYDLL_EXPORTS
#  define AB_EXPORTS __declspec(dllexport)
#else
#  define AB_EXPORTS
#endif
AB_EXPORTS void func();
#endif

上面的代码中,func就是我们自己定义的函数。

向.cpp文件中添加如下代码:

#include "mydll.h"
#include <iostream>
void func(){
  std::cout << "hello func \n";
}

执行生成命令之后,在生成目录下回出现如下的内容:

2,测试自己编写的DLL

添加一个Win32 Consol Application空项目,向新项目中添加cpp代码文件,并加入如下代码:

#include "mydll.h"
#include <iostream>
using namespace std;
int main(){
  func();
  return 0;
}

然后按如下图所示配置。

生成-> Ctrl + F5执行!如下图所示执行结果:

总结

本文主要讨论了如何使用Visual Studio创建自己的dll,用例子阐述了这个过程,结果表明文中的方法可行。

如有不足支持,欢迎大家批评指正。

最新文章

  1. javascript 操作cookie
  2. HTML中的图像
  3. Newtonsoft.Json(C#处理json)
  4. 如何在多模型的情况下进行EF6的结构迁移
  5. 楼市、股市后下一届ZF将用什么去做超发货币的蓄水池(
  6. hdu 3172 Virtual Friends
  7. In-Memory:Hash Index
  8. 使用Dom4j生成xml文件
  9. (转载)记录函数 getStyle() 获取元素 CSS 样式
  10. uva-11995 - I Can Guess the Data Structure!(栈,优先队列,队列,水题)
  11. IDL 遍历 XML文档示例
  12. [js高手之路]jquery插件开发实战-选项卡详解
  13. 前端工程师:电信专业转前端是如何拿到阿里、腾讯offer的?
  14. hive指定hadoop执行队列
  15. Jenkins+Jmeter持续集成笔记(一:环境准备)
  16. 选择困难症的福音——团队Scrum冲刺阶段-Day 3
  17. Z字形编排问题详解(C++)
  18. cglib动态代理(需导入cglib-nodep-2.1_3.jar)
  19. U3D非常诡异的【结构体引用】现象-个例
  20. 如何根据域名来得到对应的IP

热门文章

  1. 玩转Ecs服务器之搭建Ftp
  2. Sevrlet 工作原理解析-转
  3. sqlserver数据库导入Mysql数据库问题
  4. Python系列之 - 线程基础
  5. python selenum 爬取淘宝
  6. Java 中的时间日期 API
  7. HDU 4787 GRE Words Revenge
  8. ●BZOJ 2669 [cqoi2012]局部极小值
  9. POJ 2832 How Many Pairs?
  10. bzoj 4008: [HNOI2015]亚瑟王