Namespaces
Variants

std::meta::is_override

Из ru.cppreference.net
< cpp | meta
 
 
 
Библиотека отражения
Запросы доступности членов
Идентификация области видимости
Запросы членов отражения
Отражение аннотаций
Извлечение значений
Подстановка отражения
Отражение результата выражения
Генерация определения класса

Первичные категории типов
Составные категории типов
Свойства типов ➜
Отношения типов
 
Типы и запросы отражения
Запросы отражения
Запросы компоновки отражения
Свойства типов
Запросы свойств типов
 
Определено в заголовке <meta>
consteval bool is_override( std::meta::info r );
(since C++26)

Возвращает true если r представляет функцию-член, которая переопределяет другую функцию-член (независимо от того, используется ли спецификатор override). В противном случае возвращает false.

Параметры

r - значение отражения

Возвращаемое значение

true Если r представляет функцию-член, которая переопределяет другую функцию-член; в противном случае — false.

Пример

#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() {}

См. также

проверяет, представляет ли отражение виртуальную функцию-член или виртуальный базовый класс
(функция)
проверяет, представляет ли отражение функцию
(функция)