std:: basic_format_string, std:: format_string, std:: wformat_string
|
헤더 파일에 정의됨
<format>
|
||
|
template
<
class
CharT,
class
...
Args
>
struct basic_format_string ; |
(1) | (C++20부터) |
|
template
<
class
...
Args
>
using
format_string
=
|
(2) | (C++20부터) |
|
template
<
class
...
Args
>
using
wformat_string
=
|
(3) | (C++20부터) |
클래스 템플릿
std::basic_format_string
는 포맷팅 함수들이 사용할
std::basic_string_view
를 감싸는 래퍼입니다.
std::basic_format_string
의 생성자는 컴파일 타임 형식 문자열 검사를 수행합니다
생성자 인수가
std::runtime_format
에 의해 반환된 경우가 아니면
(C++26부터)
.
목차 |
멤버 함수
|
(constructor)
|
basic_format_string
을 생성하며, 인수가 형식 문자열이 아닌 경우 컴파일 오류를 발생시킴
(public member function) |
|
get
|
래핑된 문자열을 반환함
(public member function) |
std::basic_format_string:: basic_format_string
|
template
<
class
T
>
consteval basic_format_string ( const T & s ) ; |
(1) | |
|
basic_format_string
(
/* runtime-format-string */
<
CharT
>
s
)
noexcept
;
|
(2) | (C++26부터) |
basic_format_string
객체를 생성합니다. 인자가 컴파일 타임 상수가 아니거나, 형식 인자 타입
Args
에 대한 형식 문자열로 파싱할 수 없는 경우 생성이 실패합니다.
basic_format_string
객체를 생성하며, 이 객체는
s
문자열의 뷰를
std::runtime_format
에 의해 반환된 형태로 저장합니다. 생성 시 포맷 문자열 검사를 수행하지 않습니다.
매개변수
| s | - |
포맷 문자열을 나타내는 객체. 포맷 문자열은 다음으로 구성됩니다:
각 치환 필드는 다음 형식을 가집니다:
1)
포맷 명세가 없는 치환 필드
2)
포맷 명세가 있는 치환 필드
|
||||||||||||||||||||||||||||||||||||||||||||||
std::basic_format_string:: get
|
constexpr
std::
basic_string_view
<
CharT
>
get
(
)
const
noexcept
;
|
||
저장된 문자열 뷰를 반환합니다.
참고 사항
별칭 템플릿
format_string
와
wformat_string
는
std::type_identity_t
를 사용하여 템플릿 인자 추론을 억제합니다. 일반적으로 이들이 함수 매개변수로 나타날 때, 해당 템플릿 인자는 다른 함수 인자들로부터 추론됩니다.
template<class... Args> std::string format(std::format_string<Args...> fmt, Args&&... args); auto s = format("{} {}", 1.0, 2); // format<double, int>를 호출합니다. Args는 1.0, 2로부터 추론됩니다 // format_string에서 type_identity_t를 사용하기 때문에, 템플릿 인자 추론은 // 형식 문자열의 타입을 고려하지 않습니다
예제
|
이 섹션은 불완전합니다
이유: 예제가 없음 |
결함 보고서
다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 올바른 동작 |
|---|---|---|---|
| P2508R1 | C++20 | 이 기능에 대한 사용자 가시적 이름이 없음 |
basic_format_string
이름이 노출됨
|