用extern显式实例化声明

时间:2013-03-11 15:39:08

标签: c++ templates c++11

我正在阅读C ++标准草案n3485中的14.7.2,它说:

  

2显式实例化的语法是:   显式实例:   extern 选择模板声明

     

显式实例化有两种形式:显式实例化定义和显式实例化声明。 显式实例化声明以extern关键字开头。

看到模板声明和定义总是放在标题中,我从未在模板上看到extern的声明。粗体句的确是什么意思?

为什么实例化会关注extern

1 个答案:

答案 0 :(得分:6)

它告诉编译器不要在此TU中实例化该模板。

请注意,如果您希望代码实际链接,则应在一个TU中实例化(不带extern位)。