码迷,mamicode.com
首页 > 编程语言 > 详细

C++ 中的动态库(Windows)

时间:2016-12-19 00:27:37      阅读:188      评论:0      收藏:0      [点我收藏+]

标签:c++   dll   lib   

库:

在C/C++中,使用库(Library)的技术,可以将编译好的符号提供给第三方使用。

库有两种:

1、动态库 Dynamic-Link Library (DLL)    (Linux下叫做 Shared Library)

2、静态库 Static Library


一、动态库的基本概念

创建DLL:

用VC创建一个类型为 “dll”的控制台项目,VC会自动创建DLL的项目框架

它自动生成一个DllMain函数,可以类比普通应用程序中的main函数


VC项目设置:

1、取消“预编译头文件”

2、改为 “/MTd编译”

3、修改输出的DLL的名字 (my.dll)


技术分享

技术分享

技术分享


编译,得到 *.lib 和 *.dll



如果想导出一个全局函数,就用关键字 __declspec(dllexport)来声明

注意:这是VC平台特有的关键字,在linux平台下不可用

使用如下:

template <typename T>
__declspec(dllexport) void MySwap(T& obj1, T& obj2)
{
	T tmp = obj1;
	obj1 = obj2;
	obj2 = tml;
}


C++ 中的动态库(Windows)

标签:c++   dll   lib   

原文地址:http://zhweizhi.blog.51cto.com/10800691/1883814

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!