[linux-l] Designfrage bzgl. Deckverwaltung
Axel Weiß
aweiss at informatik.hu-berlin.de
Sa Okt 22 11:56:37 CEST 2005
Volker Grabsch schrieb:
> On Sat, Oct 22, 2005 at 12:47:51AM +0200, Kai Kuehne wrote:
> > On 10/22/05, Frank Reker <frank at reker.net> wrote:
> > > und das ganze ohne teure operator overloading oder gar
> > > properties klassen
>
> Hier könnte man auch einfach den "(int)"-Operator überladen,
> dann braucht man das nicht für jeden Vergleichsoperator extra
> zu machen.
Volker, der Grund für die Operatoren ist doch, zu verhindern dass jemand
aus Versehen Farben und Werte miteinander vergleicht.
Und, Frank, wer genau hinsieht, entdeckt auch das 'inline' ;). Somit
haben die Operatoren keinen Overhead, sondern dienen dem Compiler zur
Typprüfung.
> > > simple c - kannste ja meinetwegen in ner klasse kapseln.
> >
> > Vielleicht sollte ich das Programm ganz in C schreiben. ;)
> [...]
> > Ich wollte eigentlich dadurch C++ OOP lernen... gut, wenn das
> > an dem Punkt gerade nicht angebracht ist, warum auch immer..
Kai, Du machst das doch zur Übung. Vielleicht ist ja die erste
'Lektion' (SCNR), dass C in C++ enthalten ist. (Übrigens: was ich Dir
angeboten habe, war kein C, sonern C++. Das erkennst Du an den
Operatoren, die es in C nicht gibt.)
Grundsätzlich kann C++ nicht mehr als C. Man kann es nur anders
hinschreiben, spart dadurch Zeit und gewinnt Übersicht.
Die Sprache C++ kennt ein paar Ausdrucksmittel, um objektorientierte
Konzepte direkt zu formulieren. Die Konzepte anwenden geht auch in C, da
nur nicht durch direkte Sprachunterstützung, sondern durch
Programmierdisziplin.
Vielleicht hilft es Dir ja, Dein Programm erstmal in C zu programmieren.
Wenn es dann das macht, was Du erwartet hast, kannst Du überlegen,
welche Teile man mit C++ eleganter aufschreiben kann. Ich bin sicher,
dass Dir hier dabei geholfen wird.
Gruß,
Axel
Mehr Informationen über die Mailingliste linux-l