Hilfe Bitte :(
Verfasst: Mo Sep 09, 2013 6:51 pm
				
				Hello Leute..
Über Morgen habe ich eine Prüfung und ich habe eine muster Prüfung gefunden
  und ich habe eine muster Prüfung gefunden   und deshalb Ich bitte jemandem um hilfe bitte :/
 und deshalb Ich bitte jemandem um hilfe bitte :/
Die Frage lautet :
Gegeben sei folgende C++ Klasse Shape:
Jede	Shape	erwartet	im	Konstruktor	eine	ID,	die	in	der	Methode	printDescription()
zur Ausgabe einer Shapebeschreibung verwendet wird. printDescription() verwendet
außerdem noch die Methoden getName() und calculateArea(). getName() liefert den
Namen des Shapetyps, calculateArea() berechnet und liefert die Fläche der Shape. Die
Methode scale(double factor) skaliert die Shape mit dem als Parameter übergebenen
Skalierungsfaktor.
Implementieren Sie eine Klasse Circle, die von der Klasse Shape erbt. Der Radius des
Kreises soll dem Konstruktor als Parameter übergeben werden. Die Methode
calculateArea() berechnet die Fläche des Kreises (r*r*3.141593) und liefert sie
zurück. getName() soll "Circle" returnieren, scale(double factor) multipliziert den
Radius mit dem übergebenen Faktor und überschreibt ihn mit dem Ergebnis. Beachten
Sie, dass der Konstruktor der Basisklasse eine ID erwartet!
Hier eine beispielhafte Verwendung von Circle, die das Verhalten skizzieren soll:
Obiger	Code	soll	bei	Verwendung	der	von	Ihnen	implementierten	Klasse	Circle	bei	
Ausführung "Area of Circle 2: 1256.6372" auf stdout ausgeben.
a) Schreiben Sie die Klassendeklaration für die Klasse Circle
b) Schreiben Sie die Implementierung der Klasse Circle
c) Was bedeutet das "= 0" hinter getName() in Shape.h? Welche Auswirkung
hat das auf die Klasse Shape?
Kann jemand mir helfen bitte?
danke voraus =)
Edit by cloidnerux: code tags eingefügt
			Über Morgen habe ich eine Prüfung
 und ich habe eine muster Prüfung gefunden
  und ich habe eine muster Prüfung gefunden   und deshalb Ich bitte jemandem um hilfe bitte :/
 und deshalb Ich bitte jemandem um hilfe bitte :/Die Frage lautet :
Gegeben sei folgende C++ Klasse Shape:
Code: Alles auswählen
//shape.h 
class	Shape
{
public:
Shape(int	id);
void	printDescription();
virtual	float	calculateArea()	=	0;
virtual	std::string	getName()	=	0;
virtual	void	scale(double	factor)	=	0;
private:
int	_id;
}
Code: Alles auswählen
//shape.cpp
#include	"shape.h"
Shape::Shape(int	id)
{
_id = id;
}
void	Shape::printDescription()
{
std::cout	<<	"Area of "	<<	getName()	 <<	<<	"	" <<	_id	<<	" : " <<	calculateArea()	<<	std::endl;
}zur Ausgabe einer Shapebeschreibung verwendet wird. printDescription() verwendet
außerdem noch die Methoden getName() und calculateArea(). getName() liefert den
Namen des Shapetyps, calculateArea() berechnet und liefert die Fläche der Shape. Die
Methode scale(double factor) skaliert die Shape mit dem als Parameter übergebenen
Skalierungsfaktor.
Implementieren Sie eine Klasse Circle, die von der Klasse Shape erbt. Der Radius des
Kreises soll dem Konstruktor als Parameter übergeben werden. Die Methode
calculateArea() berechnet die Fläche des Kreises (r*r*3.141593) und liefert sie
zurück. getName() soll "Circle" returnieren, scale(double factor) multipliziert den
Radius mit dem übergebenen Faktor und überschreibt ihn mit dem Ergebnis. Beachten
Sie, dass der Konstruktor der Basisklasse eine ID erwartet!
Hier eine beispielhafte Verwendung von Circle, die das Verhalten skizzieren soll:
Code: Alles auswählen
//	Circle	mit	ID	=	2,	Radius	=	40	initialisieren
Shape	*rect	=	new	Circle(2,	40.0);
//	Skaliere	den	Radius	des	Kreises	mit	Faktor	0.5
//	Danach	ist	der	Radius	gleich	20
rect->scale(0.5);
//	Ausgabe	der	Beschreibung	des	Kreises
rect->printDescription();Ausführung "Area of Circle 2: 1256.6372" auf stdout ausgeben.
a) Schreiben Sie die Klassendeklaration für die Klasse Circle
b) Schreiben Sie die Implementierung der Klasse Circle
c) Was bedeutet das "= 0" hinter getName() in Shape.h? Welche Auswirkung
hat das auf die Klasse Shape?
Kann jemand mir helfen bitte?
danke voraus =)
Edit by cloidnerux: code tags eingefügt
