Я пытаюсь создать вектор, в котором будет храниться значение моего класса, созданное пользователем.К сожалению, я сталкиваюсь с ошибкой, которая утверждает, что индекс моего вектора находится вне диапазона.Мое главное предположение - возможно, что-то не так с тем, как я анализирую каждый элемент вектора, или, возможно, с тем, как я создаю вектор.Любые предложения будут с благодарностью!
...
unsigned int population = 3;
vector<Platypus> pop;
for(unsigned int i = 0; i < population; i++) {
pop.push_back(Platypus());
}
for (unsigned int i = 0; i < length; i++) {
for (unsigned int j = 0; j < population; j++) {
if (i%(int)fabs(4 - eatAmount) == 0) {
pop.at(j).eat();
}
if(pop.at(j).getAge() >= 24 &&
pop.at(j).getGender()=='F' &&
pop.at(j).getAlive()==1 &&
pop.at(j).getMutant()!=0){
pop.push_back(pop.at(j).hatch());
}
if (i > 30) {
pop.at(j).age_me(1);
}
if (j % 3 == 0 && j!=0) {
pop.at(j).fight(pop.at(j - 1));
}
pop.at(j).print(cout);
}
}
for (int i = pop.size(); i > 0; i--) {
if (pop[i].getAlive() == 0) {
pop.erase(pop.begin()+i);
}
}
}