Task 3 Order - int variable derping
Здравейте!
Уха, честта за първия пост за този курс се пада на мен, хаха! Някой по-умен от мен може ли да ме светне, защо аджеба в кода ми int променливата ми, поради някаква непонятна причина за мен, не желае да приеме стойността, която и задавам? Ето за по-ясно:
void insert(const Company* c)
{
if (c->getName() != "\n" && c->getName() != "" && c->getName() != " ")
{
(*companies).push_back(c);
for (int i = 0; i < (*companies).size() - 1; i++)
{
if ((*companies)[i]->getId() > (*companies)[i + 1]->getId()) //&& (*companies)[i]->getId() != (*companies)[i + 1]->getId())
{
auto oldPosVal = (*companies)[i];
(*companies)[i] = (*companies)[i + 1];
(*companies)[i + 1] = oldPosVal;
i = 0; // doesn't get value assigned
}
else if ((*companies)[i]->getId() == (*companies)[i + 1]->getId())
{
if ((*companies)[i]->getName() > (*companies)[i + 1]->getName())
{
auto oldPosVal = (*companies)[i];
(*companies)[i] = (*companies)[i + 1];
(*companies)[i + 1] = oldPosVal;
i = 0; // doesn't get value assigned
}
}
}
}
}
П.С. Надявам се няма да е проблем, че съм пуснал малко от кода на тази задача.
Поздрави!
Всъщност влиза, за това съм и малко объркан. Минава и през самата променлива, но поради някаква причина не приема стойността, която и се задава. :/