编译以下代码
template<typename T>
class t1 {
};
class t1 {
};
给出以下错误
error: template argument required for ‘class t1’
自从我使用C ++足以深入研究模板(我决定重新学习并学习C ++ 11/14)以来,已经有好几年了,所以我可能会弄错,但我认为这是合法的。
有人可以提供建议吗?如果你想做这样的事情,你会怎么做呢?
答案 0 :(得分:2)
不,你不能这样做。
与函数模板不同,类模板不能重载。 t1
已被声明为类模板,您唯一能做的就是专门化它:
template <>
class t1<int> {
};
答案 1 :(得分:0)
你可以使用可变参数模板做喜欢这个:
myclass<>
但我认为除了模板元编程之外没有什么用处,你仍然需要使用模板语法:isAccessibilityElement = NO