Этот код:
template <template <typename> class T>
class A
{
};
template <typename T>
class B
{
A<B> x;
};
не компилируется, я полагаю, поскольку A<B>
интерпретируется как A<B<T> >
в пределах B
.
Итак, как это сделать?вы передаете B
в качестве параметра шаблона шаблона в его области видимости?