Difference between revisions of "cpp/utility/format/format to n"
D41D8CD98F (Talk | contribs) (Created page with "{{cpp/title|format_to_n}} {{cpp/utility/format/navbar}} {{dcl begin}} {{dcl header | format }} {{dcl | num=1 | since=c++20 |1= template<class OutputIt, class... Args> std::fo...") |
D41D8CD98F (Talk | contribs) m |
||
Line 44: | Line 44: | ||
{{tt|OutputIt}} satisfies the concept {{tt|std::output_iterator<const CharT&>}}. | {{tt|OutputIt}} satisfies the concept {{tt|std::output_iterator<const CharT&>}}. | ||
}} | }} | ||
− | The behavior is undefined if {{tt|OutputIt}} does not model (meet the semantic requirements of) the the concept {{tt|std::output_iterator<const CharT&>}}, or if {{c|std::formatter<Ti, CharT>}} does not meet the {{named req|Formatter}} requirements for | + | The behavior is undefined if {{tt|OutputIt}} does not model (meet the semantic requirements of) the the concept {{tt|std::output_iterator<const CharT&>}}, or if {{c|std::formatter<Ti, CharT>}} does not meet the {{named req|Formatter}} requirements for any {{tt|Ti}} in {{tt|Args}}. |
===Parameters=== | ===Parameters=== | ||
Line 51: | Line 51: | ||
{{par | n | maximum number of characters to be written to the buffer}} | {{par | n | maximum number of characters to be written to the buffer}} | ||
{{par | fmt | string view representing the format string. | {{par | fmt | string view representing the format string. | ||
− | {{cpp/utility/format/format string}} | + | {{include|cpp/utility/format/format string}} |
}} | }} | ||
{{par | args... | arguments to be formatted}} | {{par | args... | arguments to be formatted}} | ||
Line 62: | Line 62: | ||
===Exceptions=== | ===Exceptions=== | ||
Throws {{lc|std::format_error}} if {{tt|fmt}} is not a valid format string. Also propagates exception thrown by any formatter. | Throws {{lc|std::format_error}} if {{tt|fmt}} is not a valid format string. Also propagates exception thrown by any formatter. | ||
− | |||
− | |||
===Example=== | ===Example=== |
Revision as of 22:02, 14 November 2019
Defined in header <format>
|
||
template<class OutputIt, class... Args> std::format_to_n_result<OutputIt> |
(1) | (since C++20) |
template<class OutputIt, class... Args> std::format_to_n_result<OutputIt> |
(2) | (since C++20) |
template<class OutputIt, class... Args> std::format_to_n_result<OutputIt> |
(3) | (since C++20) |
template<class OutputIt, class... Args> std::format_to_n_result<OutputIt> |
(4) | (since C++20) |
template<class OutputIt> struct format_to_n_result { |
(5) | (since C++20) |
Format args
according to the format string fmt
, and write the result to the output iterator out
. At most n
characters are written. 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 the concept std::output_iterator<const CharT&>
, or if std::formatter<Ti, CharT> does not meet the Formatter requirements for any Ti
in Args
.
Contents |
Parameters
out | - | iterator to the output buffer | ||||||||||||||||||||||||||||||||||||||||||||||
n | - | maximum number of characters to be written to the buffer | ||||||||||||||||||||||||||||||||||||||||||||||
fmt | - | string view representing the format string.
Each replacement field has the following format:
1) replacement field without a format specification
2) replacement field with a format specification
| ||||||||||||||||||||||||||||||||||||||||||||||
args... | - | arguments to be formatted | ||||||||||||||||||||||||||||||||||||||||||||||
loc | - | std::locale used for locale-specific formatting |
Return value
A format_to_n_result
such that the out
member is an iterator past the end of the output range, and the size
member is the total (not truncated) output size.
Exceptions
Throws std::format_error if fmt
is not a valid format string. Also propagates exception thrown by any formatter.
Example
This section is incomplete Reason: no example |