std::meta::constant_of
From ru.cppreference.net
| Определён в заголовочном файле <meta>
|
||
constexpr std::meta::info constant_of( std::meta::info r );
|
(начиная с C++26) | |
Возвращает рефлексию (константного) значения того, что представляет r.
Формально:
- Если
rпредставляет аннотацию, возвращает её базовую константу (std::meta::reflect_constant(expr)гдеexpr— это константное выражение аннотации). - В противном случае, пусть
Rбудет константным выражением, равнымr:
- Если
rпредставляет переменную или объект типа массива, возвращаетstd::meta::reflect_constant_array([:R:]). - В противном случае, если
rпредставляет функцию, возвращаетstd::meta::reflect_function([:R:]). - В противном случае возвращает
std::meta::reflect_constant([:R:]).
- Если
Параметры
| r | - | значение рефлексии |
Возвращаемое значение
Рефлексия значения того, что представляет r.
Исключения
Выбрасывает std::meta::exception, если только r не представляет аннотацию или [:R:] не является корректным выражением вставки.
Примечания
Результат представляет функцию, если r представляет функцию, объект параметра шаблона, если r представляет переменную или объект типа массива или класса, или (скалярное) значение, если r представляет переменную или объект скалярного типа.
Пример
| Этот раздел не завершён Причина: нет примера |
См. также
(C++26) |
возвращает рефлексию, представляющую значение или объект параметра шаблона, пригодную для использования в качестве константного аргумента шаблона (шаблон функции) |
(C++26) |
преобразует массив времени компиляции в статическое хранилище, возвращая рефлексию, представляющую статический массив (шаблон функции) |
(C++26) |
возвращает рефлексию, представляющую функцию, пригодную для использования в качестве константного аргумента шаблона (шаблон функции) |