给定一个类模板,编译时间太长。在开发和调试期间,我想通过将成员函数的定义分成单独的翻译单元来减少编译时间。只是为了完全专业化(这也是为了减少编译时间)。
是否可以在 C++ 中通过将类模板完全专业化的成员函数的定义放入单独的 TU 中来分离它们?
template<> void A<smth>::f()
或者void A<smth>::f()
在尝试中什么都不做。我无法解决链接时间错误。
使类模板的显式实例化声明(即extern template class...
)可见(或不可见)(连同删除void A<smth>::f()
)到定义成员函数的 TU 中,也没有给出任何结果。