Hallo zusammen,
ich versuche mich gerade an Vererbung.
Es gibt eine Aligator.hpp + .cpp die erbt die Reptile.hpp + .cpp welche die Animal.hpp + .cpp erbt.
Der Fehler ist im untersten Glied aber wohl bei allen gleich, da sie nahezu identisch sind - abgesehen von den Parametern und Namen.
Aligator.hpp
Aligator.cpp
Als Fehlermeldung gibt er mir für die hpp aus:
error: expected class-name before '{' token
und für die cpp:
error: 'Reptile' has not been declared
Woran kann das liegen? Rufe ich den Konstruktor der Geerbten Klasse falsch aus, aber das erklärt nicht die hpp Fehlermeldung...
EDIT: Fehlende Dateien:
Reptile.hpp
Animal.hpp
ich versuche mich gerade an Vererbung.
Es gibt eine Aligator.hpp + .cpp die erbt die Reptile.hpp + .cpp welche die Animal.hpp + .cpp erbt.
Der Fehler ist im untersten Glied aber wohl bei allen gleich, da sie nahezu identisch sind - abgesehen von den Parametern und Namen.
Aligator.hpp
Code:
#ifndef ALIGATOR_HPP_
#define ALIGATOR_HPP_
#include <iostream>
class Aligator : public Reptile { <-- FEHLERMELDUNG: error: expected class-name before '{' token
int numberOfTeeth;
public:
Aligator(int numberOfTeeth, bool hasFeet, int age);
~Aligator();
int getNumberOfTeeth();
void setNumberOfTeeth(int numberOfTeeth);
};
#endif /* ALIGATOR_HPP_ */
Aligator.cpp
Code:
#include "Aligator.hpp"
void Aligator::setNumberOfTeeth(int teeth) {
Aligator::numberOfTeeth = teeth;
}
int Aligator::getNumberOfTeeth() {
return Aligator::numberOfTeeth;
}
Aligator::Aligator(int teeth, bool hasFeet, int age) {
Reptile::Reptile(hasFeet, age); <--FEHLERMELDUNG: error: 'Reptile' has not been declared
numberOfTeeth = teeth;
std::cout << "Konstruktor der Klasse Aligator" << std::endl;
}
Aligator::~Aligator() {
std::cout << "Destruktor der Klasse Aligator" << std::endl;
}
Als Fehlermeldung gibt er mir für die hpp aus:
error: expected class-name before '{' token
und für die cpp:
error: 'Reptile' has not been declared
Woran kann das liegen? Rufe ich den Konstruktor der Geerbten Klasse falsch aus, aber das erklärt nicht die hpp Fehlermeldung...
EDIT: Fehlende Dateien:
Reptile.hpp
Code:
#ifndef REPTILE_HPP_
#define REPTILE_HPP_
class Reptile : public Animal {
bool hasFeet;
public:
Reptile(bool hasFeet, int age);
~Reptile();
bool getHasFeet();
};
#endif /* REPTILE_HPP_ */
Animal.hpp
Code:
#ifndef ANIMAL_HPP_
#define ANIMAL_HPP_
class Animal {
int age;
public:
Animal(int age);
~Animal();
int getAge();
void setAge(int age);
};
#endif /* ANIMAL_HPP_ */
Zuletzt bearbeitet: