Подскажите аналог f-строк в С++
Мне нужно, чтобы переменные, которые находятся в фигурных скобках, принимали заданные значения. Код такого вида:
QString compression_level = "8";
QString sample_fmt = "s16";
QString sampling_rate = "48000";
QString preset = "-compression_level {compression_level} -sample_fmt {sample_fmt} -sample_rate={sampling_rate}";
В Python для этого используются так называемые f-строки:
f"-compression_level {compression_level} -sample_fmt {sample_fmt} -sample_rate={sampling_rate}".
Имеется ли в С++ что-то подобное?
Ответы (1 шт):
Автор решения: dIm0n
→ Ссылка
В C++20 добавили библиотеку fmt в стандартную библиотеку. Пока что она отсутствует в популярных реализациях, поэтому вот пример, в котором в будущем надо заменить #include <fmt/core.h> на #include <format>, а fmt:: – на std:::
#include <iostream>
#include <fmt/core.h>
int main() {
std::cout << fmt::format("{}, {}\n", "hello", "world");
}
Пока можно довольствоваться std::printf:
#include <cstdio>
int main() {
std::printf("%d\n%zu\n", 42, sizeof(42));
}