std::meta::is_pure_virtual
Von de.cppreference.net
| 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
Diesen Code ausführen
#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(C++26) |
prüft, ob die Reflexion eine virtuelle Memberfunktion oder virtuelle Basisklasse repräsentiert (Funktion) |
(C++26) |
prüft, ob die Reflexion eine Memberfunktion repräsentiert, die eine andere Memberfunktion überschreibt (Funktion) |
(C++26) |
prüft, ob die Reflexion eine Funktion repräsentiert (Funktion) |
(C++11) |
prüft, ob ein Typ ein abstrakter Klassentyp ist (Klassenvorlage) |