Veröffentlicht 26. Oktober 201113 j hallo wie es der titel schon erahnen lässt habe ich mit diesem fehler meine probleme. der fehler passt nicht ganz in den titel ausgeschrieben lautet er wie folgt: error C2511: 'int IntVektor::out(void)': Überladene Memberfunktion nicht in 'IntVektor' gefunden nun stellt sich die frage was ich damit nun genau anfangen soll... die dazugehörige klasse ist diese hier: class IntVektor { private: int* v; int s; public: IntVektor (int len); ~IntVektor(void); int &at (int i); int size (); int out (int len); und hier wird der fehler bemängelt: int IntVektor::out() { for (i=0; i<= len; i++) { cout << v << '\n'; } } meine frage ist nun was ist daran überladen? und wie bekomme ich den fehler weg? danke jetzt schon für eure hilfe.
26. Oktober 201113 j Deine Klasse deklariert eine Funktion int out (int len); und du definierst eine Methode int IntVektor::out() {} Also entweder hast du bei deiner Methodendefinition den Parameter vergessen oder in deiner Klassendeklaration eine Methodenüberladung von out die keine Parameter bekommt.
26. Oktober 201113 j sowas in der art dachte ich mir schon aber ich sehe grade nicht wie ich das ändern kann, ich stehe definitiv auf der leitung...
26. Oktober 201113 j hmm wo soll das denn genau hin? in der klasse ist out bereits deklariert mit "int out (int len);" wenn ich deinen vorschlag dort mit dazu schreibe kommt die meldung dass len und i nicht mehr deklariert sei oder wenn ich das "int len" aus der klammer nehme das gleiche spiel oO
27. Oktober 201113 j es war gestern abend schon spät, deswegen hab ich total übersehen, dass du len ja brauchst... also in dem fall den parameter bei der definition mit angeben und nicht vergessen auch i zu deklarieren. int IntVektor::out(int len) { for (int i=0; i<= len; i++) { cout << v << '\n'; } }
Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.