库使用模板类TemplCls<TArg>
,链接的可执行文件也使用它。现在,如果相同最终二进制文件(库或可执行文件)的两个源文件使用具有相同参数的模板,则只会保留模板的一个实例化。
如果动态库和可执行文件都使用模板会发生什么?由于可执行文件的链接器(通常)将接收与动态库链接的终端选项,它是否还会记住模板已经在库本身中实例化,因此不需要将其实例化到可执行文件中?
库使用模板类TemplCls<TArg>
,链接的可执行文件也使用它。现在,如果相同最终二进制文件(库或可执行文件)的两个源文件使用具有相同参数的模板,则只会保留模板的一个实例化。
如果动态库和可执行文件都使用模板会发生什么?由于可执行文件的链接器(通常)将接收与动态库链接的终端选项,它是否还会记住模板已经在库本身中实例化,因此不需要将其实例化到可执行文件中?