Tellan Skrevet 8. oktober 2008 Del Skrevet 8. oktober 2008 Eg har ein klasse Eigar som arver frå 2 klassar Person og Kjoretoy: Her er litt av headerfila til Eigar: .... class Eigar : public Person, public Kjoretoy { public: Eigar(); ........... private: int antal; }; Her er litt av cpp fila til eigar ..... Eigar::Eigar() :antal(0) { } .... Når eg prøver å kompilera programmet får eg ein linking error undefined reference to Eigar::Eigar()` Dersom eg ikkje kaller standarkonstruktøren i main fila går det fint å kompilera. Og dersom eg tar vekk standarkonstruktøren frå cpp fila og legg den inn i headerfila går det også fint å kompilera og kjøra programmet. Dvs at det som før var: Eigar::Eigar(); Forandrer eg til Eigar::Eigar():antal(0) {}; Kan eg ikkje skriva inn standarkonstruktøren(og spesialkonstruktøren) inn i cpp fila, må alt vera i headerfila? Eg tok ikkje med resten av programmet fordi eg trudde ikkje det var særlig relevant i forhold til problemstillinga. Er det nokon snille programererar der ute som har lyst å opplysa meg litt? Lenke til kommentar
Dead_Rabbit Skrevet 8. oktober 2008 Del Skrevet 8. oktober 2008 Da vil jeg tro at problemet er at du ikke linker med cpp-fila. Lenke til kommentar
Tellan Skrevet 9. oktober 2008 Forfatter Del Skrevet 9. oktober 2008 Da vil jeg tro at problemet er at du ikke linker med cpp-fila. Hehe takk skal du ha, eg hadde jobba lenge i går og var for sleten til å oppdaga det. Eg hadde inkludert headerfila i cpp fila, men av ein eller annan grunn hadde eg gløymt å lagt til cpp fila mi i prosjektet. Det var litt frustrerande fordi eg var heilt sikker på at det gjekk ann Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå