To a large extent it depends on what you are looking for from your build, for example whether you have seperate release and debug builds as discussed here. If you have a combined debug/release build you will need function level linking in order to use edit and continue in the debugger, which most developers will want.
Of the others, they primarily reduce the size of your executable. For example, if you have two identical strings literals char *a = "happy holidays", *b = "happy holidays", they will reside in the same piece of memory when string pooling is enabled.
发布评论
评论(1)
在很大程度上,这取决于您要从构建中寻找什么,例如,您是否有单独的发布和调试构建,如所讨论的此处。 如果您有组合的调试/发布版本,则需要功能级链接才能在调试器中使用编辑和继续,这是大多数开发人员所希望的。
在其他方法中,它们主要减少可执行文件的大小。 例如,如果您有两个相同的字符串文字 char *a = "happyholiday", *b = "happyholiday",则在启用字符串池时,它们将驻留在同一块内存中。
To a large extent it depends on what you are looking for from your build, for example whether you have seperate release and debug builds as discussed here. If you have a combined debug/release build you will need function level linking in order to use edit and continue in the debugger, which most developers will want.
Of the others, they primarily reduce the size of your executable. For example, if you have two identical strings literals char *a = "happy holidays", *b = "happy holidays", they will reside in the same piece of memory when string pooling is enabled.