тип класса, но не тип объединения (3.9.2) ".
тим, у меня есть некоторый шаблонный класс в зависимости от типаT
. T
может быть что угодноint
, int*
, pair <int, int>
или жеstruct lol
; это не может бытьvoid
, ссылка или что-нибудь cv-квалифицированное хотя. Для некоторой оптимизации мне нужно знать, могу ли я подклассT
, Итак, мне нужен тип чертыis_subclassable
определяется как логическая комбинация основных черт или с помощью некоторых трюков SFINAE.
В исходном примереint
а такжеint*
не подклассы, в то время какpair <int, int>
а такжеstruct lol
находятся.
РЕДАКТИРОВАТЬ: Как указано ниже, профсоюзы также не подразделяются наT
также может быть объединенным типом.
Как мне написать тип черты, который мне нужен?