std::vformat_to
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<constCharT&>.
OutputIt must model (meet the semantic requirements of) the concept std::output_iterator<constCharT&>, and std::formatter<Ti,CharT> must meet the Formatter requirements for any Ti in the type of arguments. Otherwise, the behavior is undefined.
Parameters
| 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 |
Return value
Iterator past the end of the output range.
Exceptions
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.
Example
Defect reports
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 |
See also
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/cpp/utility/format/vformat_to