Oracle Solaris Studio 12.2:C++ 用户指南

7.4.5 通过 -instances=extern 实现模板实例自动一致

如果指定了 -instances=extern,模板系统信息库管理器可确保系统信息库中实例的状态与源文件一致且是最新的。

例如,如果使用 – g 选项编译源文件(调试),也会使用 – g 编译来自数据库中的所需文件。

此外,模板系统信息库会跟踪编译中的更改。例如,如果设置了 — DDEBUG 标志来定义名称 DEBUG,数据库中会记录下该信息。如果在以后的编译中省略该标志,则编译器重新实例化设置依赖性的这些模板。


注 –

如果删除模板的源代码或停止使用模板,模板的实例会保留在缓存中。如果更改函数模板的签名,使用旧签名的实例会保留在缓存中。如果因为这些问题在编译时或链接时遇到了异常行为,请清除模板缓存并重新生成程序。