Здравствуйте, компилятор (Visual Studio) жалуется на цикл for (а именно как я его объявил, с несколькими переменными). В чём ошибка? Почитал на сайтах, так же можно делать.
for (seqList* cur = sequence, int j = 0; j < len; cur = cur->next, j++) {
this->addElem(cur->elem->value);
}
Переменная len объявлена, если что.
Вы не можете давать несколько объявлений в заголовке
seqList* cur = sequence, int j = 0;
Вернее, несколько объявлений разных типов...
Но можно сыграть с помощью структуры:
struct Intern
{
seqList * cur;
int j;
};
for(Intern x = { sequence, 0 }; x.j < len; x.cur = x.cur->next, x.j++)
{
// ...
}
Или с помощью кортежа:
for(tuple<seqList*,int> x = { sequence, 0 };
get<1>(x) < len;
get<0>(x) = get<0>(x)->next, get<1>(x)++)
{
// ...
}
Или даже так (С++17):
for(auto [cur,j] = make_tuple(sequence,0);
j < len;
cur = cur->next, j++)
{
// ...
}
Сборка персонального компьютера от Artline: умный выбор для современных пользователей