Seite 1 von 1
C++ und Klassen...
Verfasst: Mo Apr 22, 2002 10:25 pm
von XTale
OK: ihr setzt ne .cc Datei (programm), die .h und die .cc Datei der Klassen.
Darunter seht ihr den Fehler des Compilers undefined reference usw usw
woran liegt das?
Achja: wenn ihr keine Ahnung habt bitte keine sinnlosen posts, ok?

C++ und Klassen...
Verfasst: Mo Apr 22, 2002 10:42 pm
von fangorrn
ficken?
statt g++ nimm c++
und last:
suchste den G-Punkt?
C++ und Klassen...
Verfasst: Di Apr 23, 2002 8:33 am
von Madman
Also, das ich mich mit C++ beschäftigt habe ist schon ewig her, aber so wie ich das sehe hast du keinen Konstruktor zur Funktion getFarbe().
Bedeutet, das der Compiler die Funktion nirgendswo finden kann und demzufolge nicht weiß, was er damit anfangen soll.
mit Spielstein::getfarbe versuchst du also auf die Klassenfunktion zuzugreifen. Die Funktion selber erscheint aber nur als char getfarbe() ist also nirgends zu finden
Frage: Wieso steht in Spielstein.h
#include Spielstein.h ???
Könnte zu einer Endlosschleife beim compilieren führen ?
Übrigens ist es guter Stil wenn main auch was zurückgibt

C++ und Klassen...
Verfasst: Di Apr 23, 2002 8:40 am
von XTale
die Spielstein.h ist die in der Mitte
getfarbe() hat doch nen constructor da unten in der spielstein.cc
char Spielstein::getfarbe() { return farbe; }
oder?

(bis freitag muss der scheiss laufen *g *schauder)
Vielleicht zur erklärung:
- ganz oben is das Hauptprogramm das auf diese Klasse zugreifen soll
- in der MItte die Spielstein.h, die Deklaration der Klasse
- unten die Spielstein.cc, die implementation der Klasse (oder auch nicht... was weiss ich warum die scheisse nicht geht)
[ 23. April 2002: Beitrag editiert von: XTale ]</p>
C++ und Klassen...
Verfasst: Di Apr 23, 2002 2:15 pm
von DarkZero
Was bedeutet das ding(color)? Gibt das was zurück? oder soll das abgeleitet sein?
C++ und Klassen...
Verfasst: Di Apr 23, 2002 3:12 pm
von Madman
Nee, Denkfehler:
Spielstein::getfarbe()
ruft die Funktion getfarbe IN DER Klasse Spielstein auf. Aber in Spielstein.h steht nur
char getfarbe();
Ohne {return Farbe}
Eigentlich müsste die Klasse so sein:
class Spielstein {
private:
char Farbe;
public:
Spielstein blabla;
function char getfarbe () { return Farbe; }
}
und dann in main
Spielstein = new Farbe;
Spielstein::getfarbe(blau);
wenn ich mich recht erinnere

C++ und Klassen...
Verfasst: Di Apr 23, 2002 6:58 pm
von XTale
Nein tust du nicht
ich habs mitlerweile rausgefunden
war fast richtig so ... fehlen nur ein paar ; oder {} in meinem Source

C++ und Klassen...
Verfasst: Mi Apr 24, 2002 8:59 am
von Madman
so ? Wo denn ?
C++ und Klassen...
Verfasst: Mi Apr 24, 2002 6:15 pm
von DarkZero
sicher, dann käm nämlich was anderes
C++ und Klassen...
Verfasst: Mi Apr 24, 2002 9:50 pm
von XTale
der referenze fehler kommt wenn man so dumm ist und vergisst die .h und die .cc zu ner .o zu linken
is gut - habs gelöst
<-closed->