看"C++动态链接库编程深入浅出"的一些笔录
2013-09-25 10:21
190 查看
来自于百度文库http://wenku.baidu.com/view/2ab4b3c5bb4cf7ec4afed08c.html?from_page=view&from_mod=download
这篇文章我已下载,想要的朋友要联系我。
DLL的目的是共享代码,而我想做的,把要花很多精力实现的功能封装成DLL,方便自己,如果能方便别人,最好不过了。
1、为了头文件不被多次包含,用ifndef define endif形式,而不要用pragma once形式。
2、头文件是两面性的,在DLL项目里,他所声明的函数都是extern "C" _declspec(dllexport)的,而当头文件被包含在调用者项目的时候,他所声明的函数是extern "C" _declspec(dllimport)的。为了让头文件具有两面性,用宏控制,例子如下:
在这里要注意了,TEST1_EXPORTS宏定义在DLL的项目属性页//C/C++//预处理器//预处理器定义,里定义。
3、DLL项目里的编译链接成功后,会生成LIB和DLL文件。如果这个时候,把LIB删掉,代码没改动下,重新生成,LIB是不会重新生成的。
4、为了支持DLL项目里能断点调试,DLL项目里的LIB、DLL和调用者所使用的LIB、DLL必须完全相同(有时按网上的说法正确设置也不能断点调试),否则在运行的时候,断点处提示"当前不会命中断点,还没有为该文档加载任何符号"。为了解决这问题,可以<清除>再<重新生成>LIB和DLL,之后复制LIB和DLL到调用者项目里,调用者项目也要<清除>再<重新生成>EXE。
这篇文章我已下载,想要的朋友要联系我。
DLL的目的是共享代码,而我想做的,把要花很多精力实现的功能封装成DLL,方便自己,如果能方便别人,最好不过了。
1、为了头文件不被多次包含,用ifndef define endif形式,而不要用pragma once形式。
2、头文件是两面性的,在DLL项目里,他所声明的函数都是extern "C" _declspec(dllexport)的,而当头文件被包含在调用者项目的时候,他所声明的函数是extern "C" _declspec(dllimport)的。为了让头文件具有两面性,用宏控制,例子如下:
#ifndef _TESTDLL_H_H #define _TESTDLL_H_H #endif #ifdef TEST1_EXPORTS #define FUNPORT extern "C" _declspec(dllexport) #else #define FUNPORT extern "C" _declspec(dllimport) #endif FUNPORT int Fun_Add( int, int );
在这里要注意了,TEST1_EXPORTS宏定义在DLL的项目属性页//C/C++//预处理器//预处理器定义,里定义。
3、DLL项目里的编译链接成功后,会生成LIB和DLL文件。如果这个时候,把LIB删掉,代码没改动下,重新生成,LIB是不会重新生成的。
4、为了支持DLL项目里能断点调试,DLL项目里的LIB、DLL和调用者所使用的LIB、DLL必须完全相同(有时按网上的说法正确设置也不能断点调试),否则在运行的时候,断点处提示"当前不会命中断点,还没有为该文档加载任何符号"。为了解决这问题,可以<清除>再<重新生成>LIB和DLL,之后复制LIB和DLL到调用者项目里,调用者项目也要<清除>再<重新生成>EXE。
相关文章推荐
- VC++动态链接库DLL编程深入浅出"
- C++动态链接库编程深入浅出
- C++动态链接库(DLL)编程深入浅出(zz)
- [转]C++学习:VC++动态链接库(DLL)编程深入浅出(zz)
- VC++动态链接库(DLL)编程深入浅出(二)
- VC++动态链接库(DLL)编程深入浅出
- 深入浅出Visual C++动态链接库(Dll)编程之四:MFC扩展DLL
- VC++动态链接库(DLL)编程深入浅出(二)
- VC++动态链接库(DLL)编程深入浅出(zz)
- [收藏转贴]struct探索·extern "C"含义探索 ·C++与C的混合编程·C 语言高效编程的几招
- VC++动态链接库(DLL)编程深入浅出(zz)
- VC++动态链接库(DLL)编程深入浅出(二)
- VC++动态链接库(DLL)编程深入浅出(三)
- 关于杂碎的一些c++多线程编程问题,由winapi到boost::thread
- C/C++的一些编程规范(高质量C++编程笔记)
- VC++动态链接库(DLL)编程深入浅出
- 推荐C、C++、Java、网络安全、Unix、Linux 一些编程书
- 【东南大学】【仪器科学与工程学院】C++下第四次上机作业 单链表类模板 非书上版本 本人自创版本 部分参考书上 包含编程时一些该注意的事项
- VC++动态链接库(DLL)编程深入浅出
- (转)VC++动态链接库(DLL)编程深入浅出(二)