Sim*_*ons 3 c++ windows dllimport dllexport visual-c++
我主要担心的是,我能够使用VC++编写C++ DLL.现在,dll出现在Debug文件夹中.
如何在其他C++控制台应用程序中使用我的DLL.如何添加引用或将DLL链接到应用程序.
另一点,在创建DLL时,VC++向导为我提供了以下选项:
现在根据CP的文章,我使用了第3个选项.(由于MFC应用程序使用了dll,因此无法跟进,有些人在这个时间点进展不多)
我是否需要始终选择第三种选择?另外两个选项意味着什么?
不完全确定你的问题但是:
你使用它的选项并不重要,这只是向导为你做的事情; 如果您使用第三个选项,则向导会在头文件中创建一个如下所示的位:
#ifdef TEST_EXPORTS
#define TEST_API __declspec(dllexport)
#else
#define TEST_API __declspec(dllimport)
#endif
Run Code Online (Sandbox Code Playgroud)
这种方式的工作方式是在DLL项目中,TEST_EXPORTS在编译器选项中定义,因此TEST_API求值为dllexport,从而告诉链接器导出这些符号.如果在另一个项目中包含此标头,则将TEST_API定义为dllimport,它告诉编译器在DLL中的运行时链接到它.这种导出符号的#define方法被广泛使用并且易于阅读.
为了在DLL中调用函数/类,您需要以下两种方式之一导出符号:a)使用__declspec(dllexport)[这几乎在所有情况下都是更方便的选项]或者b)使用.DEF文件在你的项目中
还想提一下,您需要在解决方案中包含.exe文件的DLL项目或DLL编译生成的.lib.
| 归档时间: |
|
| 查看次数: |
6815 次 |
| 最近记录: |