std::define_static_string
来自 zh.cppreference.net
| 定义于头文件 <meta>
|
||
template< ranges::input_range R >
consteval const ranges::range_value_t<R>* define_static_string( R&& r );
|
(C++26 起) | |
将字符数组提升至静态存储。若 r 不是字符串字面量对象,则附加一个空字符。
等价于:
return std::meta::extract<const ranges::range_value_t<R>*>(std::meta::reflect_constant_string(r));
参数
| r | - | 一个字符的 输入范围(input_range) |
返回值
指向字符数组对象首元素的指针,该对象是 模板形参对象,内容为 r。
注解
作为模板形参对象,生成的字符串对象具有静态存储期。内容相同的字符串对应同一个对象。
生成的模板形参对象是潜在非唯一对象。
| 功能特性测试宏 | 值 | 标准 | 功能特性 |
|---|---|---|---|
__cpp_lib_define_static |
202506L |
(C++26) | std::define_static_string
|
示例
| 本节未完成 原因:暂无示例 |
参阅
(C++26) |
将编译时数组提升至静态存储,返回静态数组的 span (函数模板) |
(C++26) |
将编译时值提升至静态存储,返回指向静态对象的指针 (函数模板) |
(C++26) |
将编译时字符串提升至静态存储,返回代表该静态字符串的反射 (函数模板) |