Defined in header <format> | ||
---|---|---|
template< class OutputIt > OutputIt vformat_to( OutputIt out, std::string_view fmt, std::format_args args ); | (1) | (since C++20) |
template< class OutputIt > OutputIt vformat_to( OutputIt out, std::wstring_view fmt, std::wformat_args args ); | (2) | (since C++20) |
template< class OutputIt > OutputIt vformat_to( OutputIt out, const std::locale& loc, std::string_view fmt, std::format_args args ); | (3) | (since C++20) |
template< class OutputIt > OutputIt vformat_to( OutputIt out, const std::locale& loc, std::wstring_view fmt, std::wformat_args args ); | (4) | (since C++20) |
Format arguments held by args
according to the format string fmt
, and write the result to the output iterator out
. If present, loc
is used for locale-specific formatting.
Let CharT
be decltype(fmt)::char_type
(char
for overloads (1,3), wchar_t
for overloads (2,4)).
These overloads participate in overload resolution only if OutputIt
satisfies the concept std::output_iterator<const CharT&>
.
The behavior is undefined if OutputIt
does not model (meet the semantic requirements of) the concept std::output_iterator<const CharT&>
, or if std::formatter<Ti, CharT>
does not meet the Formatter requirements for any Ti
in the type of arguments.
out | - | iterator to the output buffer | ||||||||||||
fmt | - | an object that represents the format string. The format string consists of
Each replacement field has the following format:
|
||||||||||||
args | - | arguments to be formatted | ||||||||||||
loc | - | std::locale used for locale-specific formatting |
Iterator past the end of the output range.
Throws std::format_error
if fmt
is not a valid format string for the provided arguments. Also propagates any exception thrown by formatter or iterator operations.
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
P2216R3 | C++20 | type of args is parameterized on OutputIt | not parameterized |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/utility/format/vformat_to