Skript Programmierung C/C++
Skript Programmierung C/C++
Skript Programmierung C/C++
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
Kapitel 13 - Vererbung<br />
13.1 Abgeleitete Klasse<br />
Ziel:<br />
Code einer vorhandenen Klasse wieder verwenden, d.h.<br />
- zusätzliche Datenkomponenten<br />
- zusätzliche Funktionskomponenten<br />
- evtl. vorhandene Funktionen überladen<br />
Deklaration einer Klasse B, abgeleitet aus der Klasse A:<br />
class B: public A { ... }<br />
Über B Objekte wird auf die public-Komponenten von A zugegriffen werden<br />
class bahn<br />
{<br />
protected: Vek3 pa; //Anfangspunkt<br />
Vek3 pe; //Endpunkt<br />
public:<br />
bahn(){};<br />
bahn (const.Vek3 &p1, const Vek3 &p2){pa = p1; pe = p2;}<br />
}<br />
void start (const Vek3 &p)<br />
void ziel (const Vek3 &p)<br />
double laenge (void)<br />
{pa = p;}<br />
{pe.p;}<br />
{return(pe-pa).laenge()}<br />
class kbogen: public bahn {<br />
protected: Vek3 pm; //mittlerer Punkt<br />
public: kbogen() {};<br />
kbogen ( const Vek3 &p1;<br />
const Vek3 &p2;<br />
const Vek3 &p3;)<br />
{pa=p1; pm=p2; pe=p3;}<br />
Ergänzung:<br />
void zwpunkt (const Vek3 &p) {pm=p;}<br />
Überladung der Funktion bahn::laenge()<br />
double laenge() {return (pe-pm).laenge() + (pm-pa).laenge();}<br />
int main()<br />
{<br />
double bahnlaenge;<br />
bahn bahn1;<br />
kbogen bogen1, bogen2;<br />
Vek3 p1 (0,2,0);<br />
Vek3 p2 (2,2,0);<br />
Vek3 p3(2,0,0);<br />
bahn1.start (p1);<br />
bahn1.ziel(p1);<br />
bogen1.start(p1);<br />
bogen1.zwpunkt(p2);<br />
bogen1.ziel(p3);<br />
}<br />
cout