Spec-Zone.ru › C++

std::meta::current_class

Определён в заголовке <meta>
consteval std::meta::info current_class();
(начиная с C++26)

Возвращает отражение класса, область видимости которого является наименьшей областью класса, содержащей точку вызова.

Пусть S — это std::meta::access_context::current().scope(); функция фактически возвращает S, если оно представляет тип класса, или std::meta::parent_of(S), если S представляет функцию-член.

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

Отражение, представляющее тип класса, область видимости которого содержит точку вызова, как описано выше.

Исключения

Выбрасывает std::meta::exception, если S не представляет тип класса или функцию-член.

Примечания

Результат может представлять тип объединения.

Если эта функция используется в инициализаторе члена по умолчанию или аргументе по умолчанию, точкой вызова считается место использования инициализатора или аргумента по умолчанию (а не место, где вызов лексически расположен).

Если эта функция вызывается в теле лямбда-выражения, результат представляет тип замыкания лямбда-выражения.

Пример

См. также

current
[static]
создаёт std::meta::access_context, связанный с областью видимости точки вызова
(открытая статическая функция-член std::meta::access_context)

© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/meta/current_class

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API