Ваша пользовательская процедура сортировки (вероятно) делает все, что должна: она сортирует целые числа в вашем array
. Следующий код просто читает содержимое вашего файла и выводит в следующем порядке:
ifstream dir("directory.txt");
while (dir >> Title >> Director >> RY){
cout << Title << ' ' << Director << ' ' << RY << endl;
}
Интересно, как вы ожидаете прочитать 7 целых чисел из файла в первый раз и прочитать все четыре поля для второй. Может быть, вы думаете, что значения строк будут пропущены? Они не будут
В вашем коде есть другие проблемы. Например, sizeof(array)
возвращает не количество элементов, а размер в байтах. Еще одна вещь: почему вы звоните main
из вашей функции sort
?
Почему вы изобретаете колесо? Считайте значения в структуру, сохраните их в векторе, затем используйте процедуру std::sort
.