Namespaces
Variants

std::meta::is_pure_virtual

Von de.cppreference.net
< cpp | meta
 
 
 
Reflexionsbibliothek
 
Reflexionstypen und -abfragen
Reflexionsabfragen
Reflexionslayoutabfragen
Typeigenschaften
Typeigenschaftsabfragen
 
Definiert in Header <meta>
consteval bool is_pure_virtual( std::meta::info r );
(seit C++26)

Gibt true zurück, wenn r eine Memberfunktion repräsentiert, die rein virtuell ist. Andernfalls wird false zurückgegeben.

Parameter

r - ein Reflexionswert

Rückgabewert

true wenn r eine Memberfunktion repräsentiert, die rein virtuell ist; andernfalls false.

Beispiel

#include <meta>

struct Base
{
    virtual void f() = 0;
};

struct Derived : public Base
{
    void f() = 0; // overrides Base::f
    virtual void g();
};

static_assert(std::meta::is_pure_virtual(^^Base::f));
static_assert(std::meta::is_pure_virtual(^^Derived::f));
static_assert(!std::meta::is_pure_virtual(^^Derived::g));

int main() {}

Siehe auch

Template:cpp/meta/dsc is abstract type
prüft, ob die Reflexion eine virtuelle Memberfunktion oder virtuelle Basisklasse repräsentiert
(Funktion)
prüft, ob die Reflexion eine Memberfunktion repräsentiert, die eine andere Memberfunktion überschreibt
(Funktion)
prüft, ob die Reflexion eine Funktion repräsentiert
(Funktion)
prüft, ob ein Typ ein abstrakter Klassentyp ist
(Klassenvorlage)