C++ 什么是<&燃气轮机;在声明中的类名之后再次出现。。。模板<;B、 C>;D类<;C、 B>;{}
我在SO中找到了关于模板的信息。这就像两次声明模板签名一样C++ 什么是<&燃气轮机;在声明中的类名之后再次出现。。。模板<;B、 C>;D类<;C、 B>;{},c++,templates,language-lawyer,C++,Templates,Language Lawyer,我在SO中找到了关于模板的信息。这就像两次声明模板签名一样 template <typename Tf, Tf F> class Collection; template <typename K, typename ... I, HashFunction<K, I...> F> //<-- #B1 class Collection<HashFunction<K, I...>, F> //<-- <>
template <typename Tf, Tf F>
class Collection;
template <typename K, typename ... I, HashFunction<K, I...> F> //<-- #B1
class Collection<HashFunction<K, I...>, F> //<-- <> again! #B2
{ /*.......*/ }
模板
班级收集;
模板//
在类模板上:
模板
类哈希函数;
因此,如果将任何实例化类型的HashFunction
用作集合
的模板参数,则会选择部分专门化//B
进行实例化
这是类模板的部分专门化^-强制链接@StoryTeller哇酷!谢谢。我想找一个复制品,但运气不好。如果你想记录你在回答自己的问题时学到的东西,你可以自己发布答案,这对整个网站都有好处。@StoryTeller如果你只是发布链接(实际上只是将你的评论复制到答案中),我会接受它。我想人们可以通过你的链接更容易地了解它。除息的
// A
template <typename Tf, Tf F>
class Collection;
// B
template <typename K, typename ... I, HashFunction<K, I...> F>
class Collection<HashFunction<K, I...>, F>
{ /*.......*/ }
template <typename Tf, Tf F>
class Collection;
template<typename K, typename ... I>
class HashFunction<K, I...>;