is_base_of Sınıfı
Bir türün başka bir türün temeli olup olmadığını sınar.
Sözdizimi
template <class Base, class Derived>
struct is_base_of;
Parametreler
Taban
Test etmek için temel sınıf.
Türetilmiş
Test etmek için türetilen tür.
Açıklamalar
Tür koşulunun bir örneği, Base türü Türetilmiş türünün temel sınıfıysa true değerini tutar, aksi takdirde false değerini tutar.
Örnek
#include <type_traits>
#include <iostream>
struct base
{
int val;
};
struct derived
: public base
{
};
int main()
{
std::cout << "is_base_of<base, base> == " << std::boolalpha
<< std::is_base_of<base, base>::value << std::endl;
std::cout << "is_base_of<base, derived> == " << std::boolalpha
<< std::is_base_of<base, derived>::value << std::endl;
std::cout << "is_base_of<derived, base> == " << std::boolalpha
<< std::is_base_of<derived, base>::value << std::endl;
return (0);
}
is_base_of<base, base> == true
is_base_of<base, derived> == true
is_base_of<derived, base> == false
Gereksinimler
Üst Bilgi:<type_traits>
Ad alanı: std