0
template <typename T>
class Sorteermethode {
public:
virtual void operator()(vector<T> & v) const = 0;
void meet(int kortste, int langste, ostream& os) {
Sortvector<T> * mijnVector = new Sortvector<T>(kortste);
Chrono * chrono = new Chrono;
while (kortste <= langste) {
(*mijnVector).vul_range();
(*chrono).start();
this()(*mijnVector);
(*chrono).stop();
printf("Lengte: %d tijd: %f", kortste, (*chrono).tijd());
kortste *= 10;
(*mijnVector).resize(kortste);
}
free(chrono);
free(mijnVector);
};
};
Wenn ich versuche, die vorher definierten Operator() aufzurufen ich die folgende Fehlermeldung erhalten:„Ausdruck ergibt keine Funktion unter 0 Argumente“ Fehler
Severity Code Description Project File Line
Error C2064 term does not evaluate to a function taking 0 arguments Algoritmen1 c:\users\user\documents\visual studio 2015\projects\algoritmen1\algoritmen1\sorteermethode.h 40
Könnte jemand geben Sie mir einen kleinen Einblick auf Dies? Soweit ich sehen kann, löst es sich mit einem Parameter nicht auf die Funktion auf. Diese
verfassen [Minimal, vollständig und prüfbare Beispiel] (http://stackoverflow.com/help/ mcve), bitte. – MikeCAT
Randnotiz: Verwenden Sie 'delete' für Objekte, die mit' new', nicht 'free' erstellt wurden. –