如何在C ++应用程序中包含EXTERNAL PCH文件?

问题描述 投票:0回答:1

我开发了一个名为COMMON的C ++ DLL,它包含一些外部类和函数。我还开发了一个使用这个DLL的C ++程序。

当我构建C ++程序时,我包含了我的COMMON DLL中的一些文件。所以我在项目的属性中添加了包含所有.h文件(大约20个文件)的foldername。

这很好用。

现在,我有以下问题

如何自动生成包含所有其他包含的“大”包含,以便在C ++程序中,我可以直接使用这个包含?

#include "dll-name.h" // include only one BIG DLL file

在构建DLL之后,我可以轻松地分发它,只提供3个文件

dll-name.LIB
dll-name.DLL
dll-name.H

我的问题有解决方案吗?

如何生成这个“大”DLL包含文件?

PS:我在没有CLI或CLR的情况下使用Visual Studio 2017和纯C ++ 17。

c++ include precompiled-headers
1个回答
0
投票

您可以向用户发送主标头的预处理版本。或者将所有标题发送给用户。

我假设你想要第一个选择。确保您有一个COMMON.h文件,其中包含您需要的所有内容。

如果您正在使用visual studio IDE打开命令行并执行操作。

CL /P /C COMMON.h 

结果将是一个巨大的.i文件重命名为.h文件。如果你想保留一些预处理器指令,现在将它们复制到文件中。使用您的DLL或LIB发送它

这样您就不必将所有标题发送给用户,只需发送一个。

© www.soinside.com 2019 - 2024. All rights reserved.