30.06.2013 Aufrufe

Softwareentwicklung in C++ - ASC

Softwareentwicklung in C++ - ASC

Softwareentwicklung in C++ - ASC

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.

8.3 Richtige Verwendung der OO Mechanismen 165<br />

Dieses Design sagt also aus, dass e<strong>in</strong> Stack e<strong>in</strong> Array ist, und genau das<br />

ist vollkommener Nonsens! E<strong>in</strong> Stack verwendet e<strong>in</strong> Array zur Speicherung,<br />

also darf hier niemals e<strong>in</strong>e Ableitung herangezogen werden! Der Stack bekommt<br />

e<strong>in</strong>fach e<strong>in</strong>e Membervariable der Klasse Array, die er zur Speicherung<br />

verwendet.<br />

Die wahnwitzige Idee, e<strong>in</strong>en Stack von e<strong>in</strong>em Array abzuleiten, führt dazu,<br />

dass der Stack alle Eigenschaften e<strong>in</strong>es Arrays erbt, also auch solche, die<br />

überhaupt nicht <strong>in</strong> se<strong>in</strong>er Natur liegen, wie z.B. <strong>in</strong>dizierte Zugriffe auf die<br />

e<strong>in</strong>zelnen Elemente. Damit wird dann noch vielleicht mit viel Würgen dem<br />

Stack die unerwünschte Funktionalität mittels Vergewaltigung von OO Konzepten<br />

abgewöhnt und schon ist der Wald-und-Wiesen-Hack perfekt, der e<strong>in</strong>em<br />

spätestens bei der nächsten Änderung der Array Klasse um die Ohren<br />

fliegt.

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

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!