История изменений
Исправление rumgot, (текущая версия) :
#include <string>
struct Foo {
std::string s;
size_t b;
size_t e;
};
template <typename... T>
auto Baz(Foo&& foo, T&&... t) {}
int main() {
// Думаю, чтобы была возможна эта конструкция
// (здесь тип второго аргумента должен быть выведен компилятором):
Baz({"q", 10, 20}, {"g", 11, 50});
// Должна быть возможна эта конструкция:
auto t = {"q",10,20};
// но эта конструкция сейчас невозможна, т.к. не описано в стандарте,
// какой тут должен быть тип у переменной t
// (по идее логично выводить это как tuple, возможно в будущем так и сделают)
}
Исходная версия rumgot, :
#include <string>
struct Foo {
std::string s;
size_t b;
size_t e;
};
template <typename... T>
auto Baz(Foo&& foo, T&&... t) {}
int main() {
// Думаю, чтобы была возможна эта конструкция
// (здесь тип второго аргумента должен быть выведен компилятором):
Baz({"q", 10, 20}, {"g", 11, 50});
// Должна быть возможна эта конструкция:
auto t = {"q",10,20};
// но эта конструкция сейчас невозможна, т.к. не описано в стандарте,
// какой тут должен быть тип у переменной t
}