首页 > 解决方案 > VisualC – 在未导出的标头中实现的 DLL 类

问题描述

标签: c++visual-c++

解决方案


引用项目文件中的标题是一个红鲱鱼。实际上,您可以将其从基本工作示例中排除,一切仍然有效。正在处理的实际文件是 .cpp 文件。

DLL 导入和导出由编译器(稍后由链接器使用)在遇到__declspec(dllimport)__declspec(dllexport)属性时生成,如您的类中使用的那样。但是,由于没有 .cpp 文件包含您的标头,编译器根本不会遇到您的类。因此,没有出口。

请注意,即使您的类最终出现在编译文件中并且导出出现,您的析构函数也是隐式inline的,因此库的用户可能(或将要,我不是 100% 确定)生成并使用它自己的定义而不是从DLL中导入一个。


推荐阅读