我想知道如果在Release模式下构建项目并将Debug模式下的库构建链接到它,是否会对库进行优化?
答案 0 :(得分:3)
没有。如果您的库是在调试模式下编译的,则代码未经优化。如果将此库链接到发布库,则库仍将保持未优化(链接器无法重新编译库!)请记住,编译库后,二进制文件已修复,不再更改。
如果您使用的是Windows,您的调试库也将与调试运行时链接,而发布库将与发布运行时链接,因此不会因符号冲突而起作用。
答案 1 :(得分:1)
如果库在调试模式下构建,则不会进行优化!
答案 2 :(得分:1)
图书馆代码已在编译时完成,所以不,它不会有优化代码。
调试/发布代码优化在编译时完成。由于库已经编译,然后没有,它将不会发布"发布"优化
作为旁注,发布优化通常取决于开发人员(他需要将他的详细和其他辅助函数放在#ifdef DEBUG预处理器开关下)。
因此库可能已经非常优化(取决于库实现),它只是启用了调试符号。