std :: is_base_of для шаблонных классов (не типовые параметры шаблона) - PullRequest
4 голосов
/ 08 июля 2019

Я пытаюсь реализовать расширение для std :: is_base_of для шаблонных классов, например, если у меня есть следующее:

template <typename X, typename Y, int Z> class A {};

template <typename X> class B : public A<X, char, 2> {};

Я могу использовать что-то вроде

std::is_base_of_ext<A, B<int>>

для статической проверки того, что An является базовым классом из B, независимо от конкретных параметров шаблона и способа, которым B специализируется из A.

" std :: is_base_of для шаблонных классов " обеспечивает очень хорошее решение для этого, но оно работает только с параметрами шаблона типа; можно ли сделать так, чтобы он работал с нетиповыми параметрами?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...