我尝试根据" C ++编程语言4th"中的一些示例来定义一些定制的元组。但我觉得我对模板的空括号语法感到困惑。
我得到以下两种情况的编译错误,但编译器报告了不同的错误消息,所以我只是想知道这两种情况之间是否存在语义差异?
template<>
struct Tuple<> { Tuple() {} };
编译报告Tuple is not a class template
template<>
struct Tuple { Tuple() {} };
编译器报告explicit specialization of non-template Tuple