05.11.2013 Aufrufe

Skript Programmierung C/C++

Skript Programmierung C/C++

Skript Programmierung C/C++

MEHR ANZEIGEN
WENIGER ANZEIGEN

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

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!