C++ Видалити з масиву структур

2075 / C++ / Структури / Видалити з масиву структур

 

struct Student
{
  char* name;
  int ID;
  int math;
};
 

void DelByIndexStudent(Student*& group, int index, int& size)
{
  Student* temp = new Student[size - 1];
  for (int i = 0; i < size; i++)
  {
    if (i < index)
    { 
      temp[i] = group[i];
    }
    else if (i > index)
    { 
      temp[i - 1] = group[i];
    }
  }
  delete[] group[index].name; //видаляємо ім'я студента
  delete[] group; //видаляємо старий масив
  group = temp; //у покажчик запишемо адресу нового масива
  size--; //розмір -1
}