Namespaces
Variants

std::experimental::ranges:: DerivedFrom

From cppreference.net
Défini dans l'en-tête <experimental/ranges/concepts>
template < class T, class U >

concept bool DerivedFrom =
std:: is_base_of < U, T > :: value &&

std:: is_convertible < std:: remove_cv_t < T > * , std:: remove_cv_t < U > * > :: value ;
(ranges TS)

Le concept DerivedFrom < T, U > est satisfait si et seulement si U est un type de classe qui est soit T , soit une base publique et non ambiguë de T .

Malgré l'utilisation de std::is_base_of et de std::is_convertible dans sa description ci-dessus, DerivedFrom n'est pas tenu de les utiliser dans son implémentation. Ainsi, il n'est pas nécessaire qu'il existe une relation de subsomption entre DerivedFrom < T, U > et std:: is_base_of < U,T > :: value ou std:: is_convertible < std:: remove_cv_t < T > * , std:: remove_cv_t < U > * > :: value .

Voir aussi

(C++11)
vérifie si un type est une base d'un autre type
(modèle de classe)
vérifie si un type peut être converti en un autre type
(modèle de classe)