Всем привет. Задача удалить студента из списка по индексу на С++, прошу помочь
Данная структура имеет такой вид:
struct Students
{
string name;
string subname;
string pname;
int mathem;
int phiz;
int him;
}
//Функция удаления студента
Students* FuncDelete(Students *Obj, int count)
{
int num;
cout << "Enter num of student to delete: ";
cin >> num;
if (num > 0 && num <= count)
{
Students* tempObj2 = new Students[count - 1];
for (int i = 0; i < count; i++)
{
if (num > 0 && num <= count)
{
tempObj2[i] = Obj[i];
}
count--;
Obj = tempObj2;
delete[] Obj;
}
}
return Obj;
}
//Функция возвращает указатель на стуктуру
Cars* AddStruct(Cars* Obj, int const count)
{
if (count == 0)//если в структуре нет ни одной записи
{
Obj = new Students[count + 1;//выделим память под 1 запись
}
else//иначе
{
Students* tempObj = new Students[count + 1];//создаем временную структуру на 1 поле больше
for (int i = 0; i < count; i++)
{
tempObj[i] = Obj[i];//копируем все данные из старой структуру в новую
}
delete[] Obj;//очищаем память старой сруктуры
Obj = tempObj;//переписываем адреса
}
return Obj;//возвращаем указатель на новую структуру
}