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 не представляет тип класса или функцию-член.
Примечания
Результат может представлять тип объединения.
Если эта функция используется в инициализаторе члена по умолчанию или аргументе по умолчанию, точкой вызова считается место использования инициализатора или аргумента по умолчанию (а не место, где вызов лексически расположен).
Если эта функция вызывается в теле лямбда-выражения, результат представляет тип замыкания лямбда-выражения.
Пример
См. также
|
[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