std:: vformat
|
Определено в заголовке
<format>
|
||
|
std::
string
vformat
(
std::
string_view
fmt,
std::
format_args
args
)
;
|
(1) | (начиная с C++20) |
|
std::
wstring
vformat
(
std::
wstring_view
fmt,
std::
wformat_args
args
)
;
|
(2) | (начиная с C++20) |
|
std::
string
vformat
(
const
std::
locale
&
loc,
std:: string_view fmt, std:: format_args args ) ; |
(3) | (начиная с C++20) |
|
std::
wstring
vformat
(
const
std::
locale
&
loc,
std:: wstring_view fmt, std:: wformat_args args ) ; |
(4) | (начиная с C++20) |
Форматирует аргументы, содержащиеся в args , в соответствии со строкой формата fmt , и возвращает результат в виде строки. Если присутствует, loc используется для локализованного форматирования.
Содержание |
Параметры
| fmt | - |
объект, представляющий строку формата. Строка формата состоит из
Каждое поле замены имеет следующий формат:
1)
поле замены без спецификации формата
2)
поле замены со спецификацией формата
|
||||||||||||||||||||||||||||||||||||||||||||||
| args | - | аргументы для форматирования | ||||||||||||||||||||||||||||||||||||||||||||||
| loc | - | std::locale используемая для локале-специфичного форматирования | ||||||||||||||||||||||||||||||||||||||||||||||
Возвращаемое значение
Строковый объект, содержащий отформатированный результат.
Исключения
Выбрасывает std::format_error если fmt не является корректной строкой формата для предоставленных аргументов, или std::bad_alloc при ошибке выделения памяти. Также распространяет любые исключения, выброшенные операциями форматирования или итераторов.
Пример
#include <format> #include <iostream> template<typename... Args> inline void println(const std::format_string<Args...> fmt, Args&&... args) { std::cout << std::vformat(fmt.get(), std::make_format_args(args...)) << '\n'; } int main() { println("{}{} {}{}", "Hello", ',', "C++", -1 + 2 * 3 * 4); }
Вывод:
Hello, C++23