我试图断言模板参数将从某个基类派生。但是基类是通用的,并且在断言的上下文中,任何特化类型之间没有区别。 我如何断言,该模板参数是从任何专用类型的泛型派生的?
我正在尝试将其写为
base_generic:
template<typename T> struct base_generic{};
derived_generic:
template<typename T> struct derived_generic : public base_generic<T>{};
带断言的类:
template<typename Tsource, typename Tderived_generic>
struct encoder {
static_assert(std::is_base_of<base_generic<typename>, Tderived_generic>::value);
};
此代码编译,但断言失败