【发布时间】:2015-10-01 20:37:21
【问题描述】:
假设我有一个函数模板
template <typename T>
void f(T) {}
然后,我们可以有一个朋友声明
friend void f<int>(int);
和一个显式的模板实例化声明
extern template void f<int>(int);
这两个声明是否以某种方式相关或完全独立?如果相关,它们如何相互作用?
【问题讨论】:
-
请更详细地定义相关。
friend声明与extern声明不同或在某种程度上相关。您是否有某个标准部分?
标签: c++ templates c++11 language-lawyer explicit-instantiation