void sort_name(NODE *tmp, LIST *l){ NODE *cursor=l->head; if(vergleich(((PDATA*)tmp->data)->vorname, ((PDATA*)tmp->data)->nachname, ((PDATA*)cursor->data)->vorname, ((PDATA*)cursor->data)->nachname)<0){ tmp->next=cursor; l->head=tmp; return; } cursor=cursor->next; NODE *cursor2=l->head; while (cursor!=NULL){ if(vergleich(((PDATA*)tmp->data)->vorname, ((PDATA*)tmp->data)->nachname, ((PDATA*)cursor->data)->vorname, ((PDATA*)cursor->data)->nachname)<0){ tmp->next=cursor; cursor2->next=tmp; return; } cursor=cursor->next; cursor2=cursor2->next; } tmp->next=cursor; cursor2->next=tmp; }
// Der Vergleichsoperator prüft, ob zwei verb-Objekte das gleiche Verb meinen. Dazu // werden die spanische und die fremdsprachliche Form geprüft. bool verbSpanish::operator== (const verbSpanish& v) const { return ((spanish == v.spanish) && vergleich(foreign, v.foreign)); }