Namespaces
Variants

std::meta::is_override

De fr.cppreference.net
< cpp | meta
 
 
 
Bibliothèque de réflexion
 
Types et requêtes de réflexion
Requêtes de réflexion
Requêtes de disposition de réflexion
Propriétés de type
Requêtes de propriétés de type
 
Défini dans l'en-tête <meta>
consteval bool is_override( std::meta::info r );
(depuis C++26)

Retourne true si r représente une fonction membre qui surcharge une autre fonction membre (que le spécificateur override soit utilisé ou non). Sinon, retourne false.

Paramètres

r - une valeur de réflexion

Valeur de retour

true si r représente une fonction membre qui en surcharge une autre; sinon false.

Exemple

#include <meta>

struct Base
{
    virtual void f() = 0;
    void g(); // non-virtual
};

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

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

int main() {}

Voir aussi

vérifie si la réflexion représente une fonction membre virtuelle ou une classe de base virtuelle
(fonction)
vérifie si la réflexion représente une fonction
(fonction)