C++ Funktionsproblem

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
Benutzeravatar
Matt
Beiträge: 46
Registriert: 22.03.2004 15:38:36

C++ Funktionsproblem

Beitrag von Matt » 14.11.2010 13:14:22

Hi Leute,

ich hoffe, dass die Frage hier okay ist. Wenn nicht, bitte kurz bescheid geben!

Ich kann einfach den Fehler nicht entdecken.

Hier die Fehlermeldung von make/g++

Code: Alles auswählen

matthias@debian:~/Desktop/st_a2$ make
g++ -c -g Vektor.cpp
Vektor.cpp: In function ‘void quicksort(int, int*, int, int)’:
Vektor.cpp:225: error: no matching function for call to ‘swap(int*&, int&, int)’
Vektor.cpp:232: error: no matching function for call to ‘swap(int*&, int&, int&)’
Vektor.cpp:235: error: no matching function for call to ‘swap(int*&, int&, int&)’
make: *** [Vektor.o] Fehler 1
matthias@debian:~/Desktop/st_a2$ 
Hier die betreffende Codestelle

Code: Alles auswählen


[.....]

void Vektor::swap(unsigned int *a, int i, int j)
{
    int temp;
    temp = array[i];
    array[i]=array[j];
    array[j]=temp;
 }

[.....]

void quicksort(int flag, int *v, int left, int right)
{
    int i, last;

    if(left >= right) 
   
    return;

    swap(v, left, (left+right)/2);

    last = left;

    for(i=left+1; i<=right; i++)
    {
        if(v[i] < v[left])
        swap(v, ++last, i);
    }

    swap(v, left, last);
    quicksort(flag,v, left, last-1);
    quicksort(flag,v,last+1, right);
}
Klar, die Zeilennummern stimmen jetzt nicht überein. Mist, hab ich Tomaten auf den Augen? Ich seh den Fehler einfach nicht. Der die beiden Funktionen sind so aus dem Skript abgeschrieben.

Danke!

gruß, matt

Benutzeravatar
GoKi
Beiträge: 2068
Registriert: 04.07.2003 23:08:56
Lizenz eigener Beiträge: MIT Lizenz

Re: C++ Funktionsproblem

Beitrag von GoKi » 14.11.2010 13:30:08

swap will ein unsigned int a (der zwar nicht benutzt wird), du übergibst aber ein int Array in Quicksort.
MfG GoKi
:wq

Benutzeravatar
Matt
Beiträge: 46
Registriert: 22.03.2004 15:38:36

Re: C++ Funktionsproblem

Beitrag von Matt » 14.11.2010 13:44:17

aaaalles klar! Vielen Dank! Es sind die kleinen Dinge, die einen wahnsinnig machen können! ;)

Antworten