3
我读的C++标准n3485草案14.7.2和它说:显式实例声明与EXTERN
2为显式实例的语法为: 显式实例:
extern
选择模板声明显式实例化有两种形式:显式实例化定义和显式实例化声明。 显式实例化声明以
extern
关键字开头。
鉴于模板声明和定义总是放在一个头,我从来没有见过一个模板,extern
声明。粗体句子究竟意味着什么?
另外为什么会关心一个实例化extern
?
我读的C++标准n3485草案14.7.2和它说:显式实例声明与EXTERN
2为显式实例的语法为: 显式实例:
extern
选择模板声明显式实例化有两种形式:显式实例化定义和显式实例化声明。 显式实例化声明以
extern
关键字开头。
鉴于模板声明和定义总是放在一个头,我从来没有见过一个模板,extern
声明。粗体句子究竟意味着什么?
另外为什么会关心一个实例化extern
?
它告诉编译器不要在此TU中实例化该模板。
请注意,如果您希望代码实际链接,它应该在一个TU中实例化(不含extern
位)。
“_Also为什么会实例化关心extern?_”因为这是用于显式实例化声明的语法。为什么编译器会忽略改变decaration含义的有效语法?像'extern int i';'它说“这是一个声明,而不是一个定义,在程序中会有一个定义” – 2013-03-11 15:57:38