Сортировка по алфавиту С++
вот написал код и нужно добавить сортировку, а я не пойму как это реализовать для моего случая
#include <iostream>
#include <Windows.h>
#include <string>
using namespace std;
class Autobus
{
private:
struct structofbus
{
int number_reis;
string marshrut;
float time_vidpravlenya;
string time_pribytya;
string dni_nedely_priedet;
};
structofbus* bus = new structofbus[128];
int kolvo_reis;
public:
Autobus()
{
for (int i = 0; i < 128; i++)
{
bus[i].marshrut = "Неуказанно!";
bus[i].time_vidpravlenya = 0;
bus[i].time_pribytya = "Неуказанно!";
bus[i].dni_nedely_priedet = "Неуказанно!";
}
}
void FunctionBUS()
{
cout << "Сколько рейсов у вас будет: ";
cin >> kolvo_reis;
for (int i = 0; i < kolvo_reis; i++)
{
cout << "\n Заполните данные " << i + 1 << " о рейсе \n\n";
cout << "Введите номер рейса: ";
cin >> bus[i].number_reis;
cout << "Введите маршрут: ";
getline(cin, bus[i].marshrut);
getline(cin, bus[i].marshrut);
cout << "Введите время отправления: ";
cin >> bus[i].time_vidpravlenya;
cout << "Введите дату прибытия: ";
getline(cin, bus[i].time_pribytya);
getline(cin, bus[i].time_pribytya);
cout << "Введите день недели когда приедет: ";
getline(cin, bus[i].dni_nedely_priedet);
}
cout << endl;
}void Vvedinie()
{
for (int i = 0; i < kolvo_reis; i++)
{
cout << "\n Информация " << i + 1 << " РЕЙСЕ \n";
cout << "Номер рейса :" << bus[i].number_reis << endl;
cout << "Маршрут: " << bus[i].marshrut << endl;
cout << "Время прибытия: " << bus[i].time_pribytya << endl;
cout << "Дата отправления: " << bus[i].time_vidpravlenya << endl;
cout << "День недели когда приедет: " << bus[i].dni_nedely_priedet << "\n\n";
}
}
void Izmenenie()
{
cout << "Какой по счету рейс вы хотите изменить: ";
int kakoi_reis_editor;
cin >> kakoi_reis_editor;
if (kakoi_reis_editor >= 0 && kakoi_reis_editor <= kolvo_reis)
{
cout << "\n Редактирование информации " << kakoi_reis_editor << " РЕЙСА \n\n";
cout << "Введите номер рейса: ";
cin >> bus[kakoi_reis_editor - 1].number_reis;
cout << "Введите маршрут: ";
getline(cin, bus[kakoi_reis_editor - 1].marshrut);
getline(cin, bus[kakoi_reis_editor - 1].marshrut);
cout << "Введите время отправления: ";
cin >> bus[kakoi_reis_editor - 1].time_vidpravlenya;
cout << "Введите время прибытия: ";
getline(cin, bus[kakoi_reis_editor - 1].time_pribytya);
getline(cin, bus[kakoi_reis_editor - 1].time_pribytya);
cout << "Введите день недели когда приедет: ";
getline(cin, bus[kakoi_reis_editor - 1].dni_nedely_priedet);
}
else
{
cout << "Вы ввели несуществующий рейс, попробуйте еще раз\n";
Izmenenie();
}
}
void Add_object()
{
cout << "Сколько рейсов вы хотите добавить: ";
int kolvo_reis_plus;
cin >> kolvo_reis_plus;
for (int i = kolvo_reis; i < kolvo_reis + kolvo_reis_plus; i++)
{
cout << "\n Введите данные о " << i + 1 << " РЕЙСЕ \n\n";
cout << "Введите номер рейса: ";
cin >> bus[i].number_reis;
cout << "Введите маршрут: ";
getline(cin, bus[i].marshrut);
getline(cin, bus[i].marshrut);
cout << "Введите время отправления: ";
cin >> bus[i].time_vidpravlenya;
cout << "Введите вермя прибытия: ";
getline(cin, bus[i].time_pribytya);
getline(cin, bus[i].time_pribytya);
cout << "Введите день недели когда приедет: ";
getline(cin, bus[i].dni_nedely_priedet);
}
cout << endl;
kolvo_reis += kolvo_reis_plus;
}
void Udalenie()
{
cout << "\nВведите номер обьекта который вы хотите удалить: ";
int Delete_nomer;
cin >> Delete_nomer;
if (Delete_nomer >= 0 && Delete_nomer <= kolvo_reis)
{
for (int i = Delete_nomer; i <= kolvo_reis; i++)
{
bus[i - 1].number_reis = bus[i].number_reis;
bus[i - 1].marshrut = bus[i].marshrut;
bus[i - 1].time_vidpravlenya = bus[i].time_vidpravlenya;
bus[i - 1].time_pribytya = bus[i].time_pribytya;
bus[i - 1].dni_nedely_priedet = bus[i].dni_nedely_priedet;
}
kolvo_reis--;
cout << "Рейс успешно удален\n";
}
else
{
cout << "Вы ввели несуществующий рейс, попробуйте еще раз\n";
Udalenie();
}
}
};
int main()
{
SetConsoleCP(1251);
SetConsoleOutputCP(1251);
cout << "Программа для иницилизации и поиска информации о рейсах\n\n";
cout << "\tЗаполните информацию о ваших рейсай\n";
Autobus yar;
yar.FunctionBUS();
bool repete = true;
while (repete)
{
cout << " Выберите что хотите сделать и нажмите соответствующую цифру\n";
cout << " \n";
cout << " 1 - Поиск информации о рейсе\n";
cout << " 2 - Редактирование данных рейса\n";
cout << " 3 - Добавить рейс\n";
cout << " 4 - Удалить рейс\n";
cout << " 5 - Вывести все рейсы\n";
cout << " 6 - Выйти из программы \n";
int wont;
cin >> wont;
cout << endl;
switch (wont)
{
case 1: yar.Izmenenie();
break;
case 2: yar.Add_object();
break;
case 3: yar.Udalenie();
break;
case 4: yar.Vvedinie();
break;
case 5: repete = false;
cout << "Завершение программы !" << endl;
break;
default:
cout << "Вы ввели неверное число, попробуйте еще раз" << endl;
}
}
return 0;
}