前端之家收集整理的这篇文章主要介绍了
c – 使用相同模板的多个功能?,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
是否可以在同一模板中包含多个
函数,而不是两次重写模板?就像你在写作:
template <typename T>
void A() {
//...
}
template <typename T>
void B() {
//...
}
这些功能不同,但它们共享一个类似的模板(使用通用类型T).有没有办法只初始化模板一次?
将它们分组到类模板中可以实现这一点.
template <class T>
struct Functions {
static void A() { /*...*/ }
static void B() { /*...*/ }
};
但是,您无法从函数的参数中推断出T,并且调用语法更长:
Functions<double>::A();
原文链接:https://www.f2er.com/c/117963.html