std::meta::reflect_function
Определён в заголовочном файле <meta> | ||
|---|---|---|
template< class T > consteval std::meta::info reflect_function( T& fn ); | (начиная с C++26) |
Возвращает отражение, представляющее функцию, на которую ссылается fn.
Программа некорректна, если T не является типом функции.
Параметры
| r | - | lvalue, ссылающийся на функцию |
Возвращаемое значение
Отражение, представляющее функцию.
Исключения
Выбрасывает std::meta::exception, если только константное выражение glvalue E, ссылающееся на функцию fn, не является допустимым аргументом шаблона для параметра шаблона типа T&.
Примечания
Эту функцию можно использовать для создания отражения функции с перегруженным именем.
int f(char); // #1 int f(long); // #2 constexpr auto rf1 = ^^f; // error: cannot reflect an overload set constexpr auto rf2 = std::meta::reflect_function<int(char)>(f); // OK, rf2 represents overload #1
Пример
См. также
|
(C++26) | возвращает отражение, представляющее значение или объект параметра шаблона, пригодное для использования в качестве константного аргумента шаблона (шаблон функции) |
|
(C++26) | возвращает отражение, представляющее объект, пригодное для использования в качестве константного аргумента шаблона (шаблон функции) |
|
(C++26) | подставляет отражённые аргументы в отражённый шаблон (шаблон функции) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/meta/reflect_function