在C++中,可以重载一个模板函数,使其能够使用模板参数或不使用模板参数调用:
这是否也适用于类型(即类)?
void func();
template <typename T> void func();
func();
func<int>();
这是否也适用于类型(即类)?
class Class;
template <typename T> class Class;
Class a;
Class<int> b;
我只对能够同时使用Class
和Class<T>
作为类型感兴趣,其中Class
的行为与Class<void>
完全相同 - 类的声明可以尽可能复杂以使其正常工作。
Class<>
。在我看来,有时将其设置为模板可能会令人困惑。我认为如果其他语法是可能的,那么默认值应该是使用它。 - chrisauto a = make_class();
与auto a = make_class<int>();
。 - dyp