为什么Visual C ++编译器将未使用的类编译成可执行文件?

时间:2014-09-04 09:01:13

标签: c++ visual-c++ visual-studio-2012

我可能误解了编译器是如何工作的,但我有以下情况。我有一个VC ++ 2012项目。该项目包含一个包含数百个类的API。现在,我创建了'main'入口点文件,我只是使用了一些std的东西。主要的甚至不包括来自API的单个头。但是当我编译时,我看到来自API的所有东西都被编译成可执行文件?为什么会发生?是否应该在项目中配置属性?

1 个答案:

答案 0 :(得分:1)

如果"未使用"也会编译属于项目一部分的源文件。通过主程序中的标题和引用。

如果您不希望编译的只是从项目中删除它们。编译器可能能够优化所有内容,但这并不意味着如果项目的一部分首先没有编译它们。