多个类做成一个dll, 但只导出其中一个类,怎么做啊?

sin816 2009-04-26 11:53:54
struct a; (a.h)
class b; (b.h,b.cpp)
class c; (c.h c.cpp)
c中的成员变量为a和b类型的,c中的函数调用b中的函数,现在只能导出类c,这个dll怎么做呢?
如果a,b普通形式声明,class _declspec(dllexport) c{...}; build后会出现警告说b没有提供dll接口
...全文
74 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
mengde007 2009-04-26
  • 打赏
  • 举报
回复
是不是b没有定义?
mengde007 2009-04-26
  • 打赏
  • 举报
回复
HelloDan 2009-04-26
  • 打赏
  • 举报
回复
那你可以不导出B类,可以只导出类B中的函数的。
pathuang68 2009-04-26
  • 打赏
  • 举报
回复
顶一下
gongqing82356722 2009-04-26
  • 打赏
  • 举报
回复
成员变量有没有初始化啊。。。。
  • 打赏
  • 举报
回复
TDump -ee dll文件 查看导出表就知道了。
baiwei156 2009-04-26
  • 打赏
  • 举报
回复
没有声明接口函数
如:
将main函数改名,并用
extern "C" void __declspec(dllexport) mainout()
~~~~~~~~~ ^^^^ ~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~
函数栈方式按照C语法(可选)返回值 声明导出 你的函数名称和参数。

project->settings->C++->preprocessor Definitions:
"_CONSOLE"替换为"_DLL"
project->settings->Link->object/library modules:
"/subsystem/console"替换为 "/dll"
同理,你如果是'_windows',replace with '_dll'
if you are '/subsystem/windows' replace with '/dll'

24,854

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 工具平台和程序库
社区管理员
  • 工具平台和程序库社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧