J'essaie donc de faire fonctionner une fonction de tri. Il devrait trier par prénom, mais si les prénoms sont les mêmes, il devrait trier par nom de famille. Je continue d'obtenir une erreur dans mySort()
qui dit "expression primaire inattendue avant") "jeton" sur la ligne où inOrder = arr
. Qu'est-ce qui se passe à cela et comment puis-je le réparer? J'ai besoin de passer mes objets dans une fonction dans une classe séparée. Je les lierai dans pastebin.Fonction de tri C++
Voici le pilote
#include <iostream>
#include <fstream>
#include <string>
#include "phoneEntry.h"
using namespace std;
void mySort(PhoneEntry& arr, int size)
{
bool inOrder = false;
for (int i = size - 1; i > 0 && !inOrder; i--)
{
inOrder = true;
for (int j = 0; j < i; j++)
{
inOrder = arr.alphaGreater(arr&);
}
}
};
int main()
{
const int MAXNUM = 500;
PhoneEntry entry[MAXNUM];
ifstream filezilla;
filezilla.open("phone.txt");
int count = 0;
if(filezilla)
{
while(count < MAXNUM && entry[count].readEntry(filezilla))
{
count++;
}
mySort(entry&, count);
for(int i = 0; i < count; i++)
{
entry[i].writeEntry(cout) << endl;
}
}
else
{
cout << "Four Oh Four - File Not Found" << endl;
}
return 0;
}
Tri Texte (http://pastebin.com/HE8Rsmbg)
Est-ce à des fins d'apprentissage?Si ce n'est pas le cas et que vous en avez besoin pour le travail/loisir, je recommande l'un des algorithmes de tri standard dédiés, qui ont des cibles différentes comme "tri complet", "top XXX, trié", "top XXX, non trié", reste reste non trié ", etc. –