01.03.2014 Aufrufe

Programmieren 1 - Strukturen - Klassen - Objekte

Programmieren 1 - Strukturen - Klassen - Objekte

Programmieren 1 - Strukturen - Klassen - Objekte

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

<strong>Objekte</strong> im Speicher<br />

FB Informatik<br />

Prof. Dr. R.Nitsch<br />

Jedes Objekt besitzt seine eigenen<br />

Membervariablen<br />

Speicherplatz für Membervariable wird erst<br />

bei der Objektdefinition reserviert.<br />

Memberfunktionen gibt es nur einmal pro<br />

Klasse im Speicher<br />

Das aufrufende Objekt wird den Memberfunktionen<br />

stets automatisch übergeben.<br />

Über den Membervariablennamen können die<br />

Memberfunktionen direkt lesend und<br />

schreibend auf die Membervariablen des<br />

aufrufenden Objekts zugreifen.<br />

Durch ein abschließendes const in der<br />

Deklaration einer Memberfunktion kann man<br />

dieser das Schreibrecht für die Membervariablen<br />

des aufrufenden Objekts<br />

entziehen.<br />

Objekt frac1<br />

Objekt frac2<br />

z<br />

n<br />

…<br />

z<br />

n<br />

…<br />

Adresse<br />

C000<br />

C100<br />

Read-only Memberfunktion<br />

Fraction Fraction::add(Fraction op2) const {<br />

Fraction result;<br />

z = z*op2.n+n*op2.z;<br />

Geht nicht, weil Membervariablen<br />

des aufrufen-<br />

n = n*op2.n;<br />

result.z = z*op2.n+n*op2.z;<br />

den Objekts nun vor Veränderung<br />

geschützt sind.<br />

result.n = n*op2.n;<br />

return result;<br />

}<br />

OK, weil hier nicht die<br />

Membervariablen des<br />

aufrufenden Objekts<br />

geändert werden.<br />

22.04.2013 8

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!