Visual Studio仍然可以优化预编译的代码
Can Visual Studio still optimize pre-compiled code?
好的解释我的问题的最佳方法是槽2示例:
示例1:
您已经使自己成为了一种称为mylibrary的框架或某种引擎,并且您已经建立了具有最大优化选项的 .lib 。strong> .lib 在一个名为myimplementation的新项目中。项目使用mylibrary的大部分功能,完成后,您将构建项目(再次具有最大优化)。
示例2:
再次有相同的库,但是您不再构建它,而是将其留下开放源。然后,您可以使用相同的myproject,包括标头,并以最大的优化构建myproject启用。
那么,示例2 运行速度会更快,因为编译器可以访问整个源代码(框架/引擎 您使用的项目)?
静态库是预编译的,这意味着任何进一步的优化取决于链接器。如今,从链接器那里可以获得很大的性能增长,但总体而言,最佳结果来自配置文件指导优化,这确实需要特殊的编译器设置来引导个人资料。总是最好开放项目(除非您要保护知识产权),因为这样的开发人员可以为其平台和编译器编译项目,更不用说在没有源代码的情况下进行调试。
相关文章:
- 在Linux for Windows上编译C++代码时出错
- 在编译C++代码(具有dlib和opencv)到WASM时面临问题
- 在程序中编写脚本来编写和编译代码
- 未定义的引用 .. 使用 OpenCV 编译 C++ 代码时,从命令行
- 在macos上编译代码的未解析符号
- 使用个人C++库编译代码时,与头文件一起使用时会中断
- 使用指针编译代码后,.cpp文件将变为随机字符
- VS Express 无法正确编译代码(?
- 如何在Ubuntu中使用Visual Studio代码编译C++代码
- 使用 Android NDK 使用 clang++ 编译C++代码时对"_Unwind_Resume"的未定义引用
- 无法使用两个包装不同下一层的ssl_stream编译代码
- 编译代码时"[Warning] extra tokens at end of"
- 无法编译代码,因为它已在 C++11 中弃用
- 如何在 Azure 应用服务中使用 cl.exe 编译 C++ 代码并生成可执行文件
- 如何调试编译 c++ 代码的 bazel?
- 为什么在使用转换构造函数编译代码时需要 const 复制构造函数?
- 编译 C++ 代码后尺寸较大
- 使用用 C++ 和 DDS 编写的 CMAKE 编译代码
- 编译代码时如何不制作二进制文件?
- 如何使用所有其他文件信息来编译代码,例如HAAR级联训练的权重的XML文件