C++封装DLL,导出一个类
来源:互联网 发布:人工智能教学百度云 编辑:程序博客网 时间:2024/05/21 17:00
http://blog.csdn.net/yyzsyx/article/details/6034332
http://blog.csdn.net/yyzsyx/article/details/6034441
首先:建一个DLL工程,win32项目--DLL--确定;
在头文件中定义要导出的类:
- class
_declspec( CWordSegment - {
- public:
-
CWordSegment(); -
~CWordSegment(); -
bool CWordSegmentInit(); -
char *CWordSegmentResolve(); -
- };
在相应的.cpp文件中实现:
- #include
"CWordSegment.h" - #include
-
-
CWordSegment::CWordSegment() - {
-
printf("CWordSegment constructed );/n" - }
-
- CWordSegment::~CWordSegment()
- {
-
printf("CWordSegment disconstructed );/n" - }
-
-
bool CWordSegment::CWordSegmentInit() - {
-
printf("CWordSegmentInit /n" ); -
return true; - }
-
- char*
CWordSegment::CWordSegmentResolve() - {
-
printf("CWordSegmentResolve /n" ); -
return NULL; - }
三、编译源文件(快捷键F7),在../CWordSegment/Debug目录下生成DLL的两个最终要的文件,这个应该不用解释了吧
CWordSegment.dll
CWordSegment.lib
下面如何调用这个lib文件:
也很简单:建一个测试工程控制台应用程序:
然后把上面生产的库文件加进来,可以用相对路径也可以用绝对路径;这个随便;
一般相对路径加入的方法:
(1)链接器-->常规-->附加依赖目录 加入进来即可;
(2)链接器-->常规-->附加依赖项 加入lib库名称;
然后就是导出类:
- 源码文件:testDll.h
- 此处声明导入类,把第一节CWordSegment.h文件中的类定义COPY过来,
- 然后把导出改为导入,即更改宏:
- 由_declspec(dllexport)
导出宏--->> 改为 -
--->>> _declspec(dllimport) 倒入宏 - 很简单吧
:) - */
-
- class
_declspec( CWordSegment - {
- public:
-
CWordSegment(); -
~CWordSegment(); -
bool CWordSegmentInit(); -
char *CWordSegmentResolve(); - };
测试程序如下:
- //
testDll.cpp : Defines the entry point for the console application. - //
-
- #include
"stdafx.h" -
-
- #include
"testDll.h" -
-
-
- CWordSegment
test; -
- int
main( intargc, char*argv[]) - {
-
-
test.CWordSegmentInit(); -
printf("Hello World!/n" ); -
return 0; - }
http://blog.csdn.net/yyzsyx/article/details/6034332
http://blog.csdn.net/yyzsyx/article/details/6034441
首先:建一个DLL工程,win32项目--DLL--确定;
在头文件中定义要导出的类:
- class
_declspec( CWordSegment - {
- public:
-
CWordSegment(); -
~CWordSegment(); -
bool CWordSegmentInit(); -
char *CWordSegmentResolve(); -
- };
在相应的.cpp文件中实现:
- #include
"CWordSegment.h" - #include
-
-
CWordSegment::CWordSegment() - {
-
printf("CWordSegment constructed );/n" - }
-
- CWordSegment::~CWordSegment()
- {
-
printf("CWordSegment disconstructed );/n" - }
-
-
bool CWordSegment::CWordSegmentInit() - {
-
printf("CWordSegmentInit /n" ); -
return true; - }
-
- char*
CWordSegment::CWordSegmentResolve() - {
-
printf("CWordSegmentResolve /n" ); -
return NULL; - }
三、编译源文件(快捷键F7),在../CWordSegment/Debug目录下生成DLL的两个最终要的文件,这个应该不用解释了吧
CWordSegment.dll
CWordSegment.lib
下面如何调用这个lib文件:
也很简单:建一个测试工程控制台应用程序:
然后把上面生产的库文件加进来,可以用相对路径也可以用绝对路径;这个随便;
一般相对路径加入的方法:
(1)链接器-->常规-->附加依赖目录 加入进来即可;
(2)链接器-->常规-->附加依赖项 加入lib库名称;
然后就是导出类:
- 源码文件:testDll.h
- 此处声明导入类,把第一节CWordSegment.h文件中的类定义COPY过来,
- 然后把导出改为导入,即更改宏:
- 由_declspec(dllexport)
导出宏--->> 改为 -
--->>> _declspec(dllimport) 倒入宏 - 很简单吧
:) - */
-
- class
_declspec( CWordSegment - {
- public:
-
CWordSegment(); -
~CWordSegment(); -
bool CWordSegmentInit(); -
char *CWordSegmentResolve(); - };
测试程序如下:
- //
testDll.cpp : Defines the entry point for the console application. - //
-
- #include
"stdafx.h" -
-
- #include
"testDll.h" -
-
-
- CWordSegment
test; -
- int
main( intargc, char*argv[]) - {
-
-
test.CWordSegmentInit(); -
printf("Hello World!/n" ); -
return 0; - }
- C++封装DLL,导出一个类
- C++封装DLL,导出一个类
- 将MFC 中的类封装为一个Dll并导出
- dll导出函数调用封装
- 关于封装一个类到dll里面
- c++DLL封装DLL问题
- C封装类写的一个DLL,所对应的接口为类的相应接口
- c#dll封装虚拟机
- C语言封装dll
- DLL C/C++导出
- 怎样从一个DLL中导出一个C++类
- 怎样从一个DLL中导出一个C++类
- 怎样从一个DLL中导出一个C++类
- 怎样从一个DLL中导出一个C++类
- 怎样从一个DLL中导出一个C++类
- 怎样从一个DLL中导出一个C++类
- 怎样从一个DLL中导出一个C++类
- 封装一个IOCP,DLL形式
- 网页加载完毕执行函数的三种方法
- Locust的API介绍-----HttpSession类和Response类
- hadoop基础
- 界面编程-写一个滑动条
- vue之组件 slot内容分发
- C++封装DLL,导出一个类
- Handler机制的简单原理
- Ubuntu 下修改用户文件权限的方法
- Kotlin 设计模式-命令
- meta标签整理
- 子元素浮动后,两个子元素高度不一样,父元素自适应高度,子元素自适应为相同高度
- 手把手教你写二叉查找树Binary Search Tree(1)
- iOS11人机交互指南-01 iPhone X概览
- 身份认证加salt