库项目的预编译头中定义的变量和函数是否可供使用该库的应用程序使用?

时间:2015-08-05 15:15:18

标签: c++ visual-c++ precompiled-headers stdafx.h

如果库项目在其stdafx.h / cpp中定义了一些变量和实用程序函数,那么这些在构建于库顶部的应用程序项目中是否可见?

2 个答案:

答案 0 :(得分:3)

是和否,他们需要像其他任何东西一样出口。预编译头用于加速编译,它们不会影响生成的可执行文件/库。

答案 1 :(得分:1)

不,它只是库项目的实现细节。通常它不包含库所公开的声明,它们由.h文件公开,该文件在您自己的项目的源文件中是#included。该库的stdafx.h 可能包含该.h文件,它并不常见。

如果您想要#include图书馆的.h文件,那么您可以使用自己的预编译标题,然后由您决定。仅在您自己项目的多个源文件中使用库声明且库稳定时才有用。