std::meta::constant_of
来自 zh.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) |
返回表示一个函数的反射,适用于用作常量模板实参 (函数模板) |