Namespaces
Variants

std::meta::is_nonstatic_data_member

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

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

Возвращает true, если r представляет нестатический элемент данных. В противном случае возвращает false.

Параметры

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

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

true r, если false представляет нестатический элемент данных; в противном случае

.

#include <meta>

struct A
{
    int a;
    static int b;
    volatile int c;
    static int f();
    int g();
};
static_assert(std::meta::is_nonstatic_data_member(^^A::a));
static_assert(!std::meta::is_nonstatic_data_member(^^A::b));
static_assert(std::meta::is_nonstatic_data_member(^^A::c));
static_assert(!std::meta::is_nonstatic_data_member(^^A::f));
static_assert(!std::meta::is_nonstatic_data_member(^^A::g));

int main() {}

Запустить этот код

is_class_member
(C++26)
проверяет, представляет ли отражение элемент класса
(C++26)
получает доступные непосредственные элементы отражённого класса или пространства имён
(функция)