Oracle® Solaris Studio 12.4:C++ 用户指南

退出打印视图

更新时间: 2014 年 12 月
 
 

7.3.3 全局实例

与早期的编译器发行版不同,现在不必预防出现一个全局实例有多个副本的情况。

这种方法的优点是通常由其他编译器接受的不正确源代码也能在这种模式中接受。需要特别指出的是,从模板实例内对静态变量的引用是不合法的,但通常是可以接受的。

这种方法的缺点是单个对象文件可能会较大,因为可能会在多个文件中存在模板实例的多个副本。如果编译对象文件以便进行调试时,有些使用了 -g 选项,而有些没有使用该选项,则很难预测是获得链接到程序中模板实例的调试版本还是非调试版本。

模板实例接收全局链接。这些实例在当前编译单元外部是可视的和可用的。

可使用 -instances=global 选项(缺省值)指定全局实例。