Рассмотрим два вызова функций
foo({"a", 1}, {"b", "value"});
foo({"a", 1}, {"b", "value"}, {"c", 1.0});
Есть ли способ записать функцию foo
для произвольного количества пар аргументов?
Я что-то думал по строкам
template <typename... Args>
void foo(std::pair<const char*, Args>&&...);
который, к сожалению, не работает.
Ошибка gcc с ошибкой:
error: too many arguments to function 'void foo(std::pair<const char*, Args>&& ...) [with Args = {}]'
foo({"aa", 1});