std::experimental::ranges::DerivedFrom
来自 cppreference.com
< cpp | experimental | ranges
定义在头文件 <experimental/ranges/concepts> 中 |
||
template< class T, class U > concept bool DerivedFrom = |
(范围 TS) | |
概念 DerivedFrom<T, U> 当且仅当 U
是一个类类型,它要么是 T
,要么是 T
的公共且明确的基类时满足。
尽管在上面的描述中使用了 std::is_base_of 和 std::is_convertible,但 DerivedFrom
不需要在其实现中使用它。因此,DerivedFrom<T, U> 和 std::is_base_of<U,T>::value 或 std::is_convertible<std::remove_cv_t<T>*, std::remove_cv_t<U>*>::value 之间不一定存在任何包含关系。
[编辑] 另请参阅
(C++11) |
检查一个类型是否是另一个类型的基类 (类模板) |
(C++11)(C++20) |
检查一个类型是否可以转换为另一个类型 (类模板) |