Namespaces
Variants

std::meta::is_pure_virtual

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

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

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

Параметры

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

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

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

Пример

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

См. также

Template:cpp/meta/dsc is abstract type
проверяет, представляет ли отражение виртуальную функцию-член или виртуальный базовый класс
(функция)
проверяет, представляет ли отражение функцию-член, которая переопределяет другую функцию-член
(функция)
проверяет, представляет ли отражение функцию
(функция)
проверяет, является ли тип абстрактным классом
(шаблон класса)