Функция format_to
Функция format_to форматирует строку в соответствии со строкой формата и записывает результат в выходной итератор. Первым параметром функция принимает выходной итератор, куда будет записан результат. Вторым параметром принимается строка формата. Последующие параметры - это аргументы, которые подставляются в строку формата вместо спецификаторов '{}'. Функция возвращает итератор, указывающий на позицию после последнего записанного символа.
Синтаксис
format_to(out, fmt, args...)
Пример
Давайте отформатируем строку и запишем результат в вектор символов:
#include <iostream>
#include <vector>
#include <format>
int main()
{
std::vector<char> res;
std::format_to(std::back_inserter(res), "Hello, {}!", "World");
for (char c : res)
{
std::cout << c;
}
std::cout << std::endl;
return 0;
}
Результат выполнения кода:
"Hello, World!"
Пример
Давайте отформатируем несколько значений и запишем результат в строку:
#include <iostream>
#include <string>
#include <format>
int main()
{
std::string res;
std::format_to(std::back_inserter(res), "{} + {} = {}", 2, 3, 5);
std::cout << res << std::endl;
return 0;
}
Результат выполнения кода:
"2 + 3 = 5"