std::meta::reflect_constant_string
cppreference.net에서
| 헤더 <meta>
|
||
template< ranges::input_range R >
consteval std::meta::info reflect_constant_string( R&& r );
|
(C++26부터)에 정의됨 | |
해당 요소들이 r의 대응 요소이고, r이 문자열 리터럴 객체가 아닌 경우 null 문자가 추가된 문자 배열 객체를 나타내는 리플렉션을 반환합니다.
결과 문자 배열 객체는 템플릿 매개변수 객체입니다: 정적 저장 기간을 가지며, 동일한 내용을 가진 문자열은 동일한 객체에 대응합니다.
결과 문자 배열 객체는 또한 잠재적으로 고유하지 않은 객체입니다.
공식적으로, 다음을 정의합니다:
CharT를ranges::range_value_t<R>이라 하고, 이는char,wchar_t,char8_t,char16_t또는char32_t중 하나여야 합니다.V를 값들이CharT타입인 팩이라 하고, 해당 요소들은r의 대응 요소이며, 단r이 문자열 리터럴 객체인 경우V은r의 종료 null 문자를 포함하지 않습니다.P를 템플릿 매개변수 객체라 하고, 타입은const CharT[sizeof...(V) + 1]이며,{V..., CharT()}로 초기화됩니다.
이 함수는 객체 P를 나타내는 리플렉션을 반환합니다.
매개변수
| r | - | 문자들의 input_range |
반환값
위에서 설명한 대로 문자 배열 객체를 나타내는 리플렉션입니다.
참고
std::meta::reflect_constant_string의 결과는 std::meta::substitute와 함께 사용하기에 적합합니다. 호출자가 리플렉션 값 대신 정적 문자열에 대한 포인터를 원한다면 std::define_static_string이 일반적으로 더 적합합니다.
예제
| 이 섹션은 완전하지 않습니다 이유: 예제 없음 |
함께 보기
(C++26) |
컴파일 타임 문자열을 정적 저장소로 승격하고, 정적 문자열의 첫 번째 문자에 대한 포인터를 반환합니다 (함수 템플릿) |
(C++26) |
컴파일 타임 배열을 정적 저장소로 승격하고, 정적 배열을 나타내는 리플렉션을 반환합니다 (함수 템플릿) |
(C++26) |
값 또는 템플릿 매개변수 객체를 나타내는 리플렉션을 반환하며, 상수 템플릿 인자로 사용하기에 적합합니다 (함수 템플릿) |