【发布时间】:2018-08-26 02:13:13
【问题描述】:
我有一个接受模板模板参数的类:
template <template <typename> class F>
class A {};
还有另一个带有内部模板类的模板类:
template <typename T>
class B {
public:
template <typename U>
class C {};
};
我希望能够在模板化上下文中使用C 作为A 的模板模板参数:
template <typename T>
using D = A<B<T>::C>;
但是,这会导致错误消息:
"模板参数的模板参数必须是类模板或类型别名模板"
我假设我在D 的声明中遗漏了typename 和template 的一些魔法咒语,但我终其一生都无法弄清楚,而且错误消息并不是特别有用。
【问题讨论】:
标签: c++ templates template-templates