Aracılığıyla paylaş


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

Ayrıca bkz.

<type_traits>
is_convertible Sınıfı