Как проверить во время компиляции, достаточно ли заполнителей `{}` для всех аргументов? ⇐ C++
-
Anonymous
Как проверить во время компиляции, достаточно ли заполнителей `{}` для всех аргументов?
std::format имеет проверку формата строки (во время компиляции и во время выполнения), но в эту проверку не включен один момент: достаточно ли заполнителей {} для всех аргументов (лишние аргументы молча игнорируются).
Я предполагаю, что это может быть полезно в некоторых редких случаях (например, если вы генерируете строку формата), но мне это не нужно, и из-за этого у меня было несколько ошибок.
Могу ли я что-нибудь сделать, чтобы проверить время компиляции? Возможно, обернув std::format в мою собственную функцию.
Пример:
#include #include интервал основной() { std::cout
std::format имеет проверку формата строки (во время компиляции и во время выполнения), но в эту проверку не включен один момент: достаточно ли заполнителей {} для всех аргументов (лишние аргументы молча игнорируются).
Я предполагаю, что это может быть полезно в некоторых редких случаях (например, если вы генерируете строку формата), но мне это не нужно, и из-за этого у меня было несколько ошибок.
Могу ли я что-нибудь сделать, чтобы проверить время компиляции? Возможно, обернув std::format в мою собственную функцию.
Пример:
#include #include интервал основной() { std::cout
Мобильная версия