In Objekten oder Klassen werden allgemeingültige Methoden festgelegt, deren konkrete Belegung eben diesem Muster folgt. So ist nicht festgelegt, welches Volumen ein bestimmter Quader hat. Sicher ist aber schon vorher, daß das Volumen eines jeden Quaders durch die Multiplikation der Länge mit der Breite und der Höhe erfolgen wird.

Das Hauptprogramm - oder das eigentliche Programm - nimmt dann nur noch die Werte auf und verarbeitet diese nach der Methode, die in der Klasse angelegt wurde.

Verschiedene Variablen und somit Werte können auch in der Klasse selber aufgenommen werden und im Programm beliebig abgerufen und weiter verarbeitet werden.

Pakete aus Typen  |  Externe Funktionen   |  Container  |  Vererbung

Aufgabe des Konstruktors ist die Initialisierung der Klasse. Mit der Erstellung einer Klasse benutzt der Compiler einen Standardkonstruktor solange Sie nicht einen eigenen Konstruktor definieren.

Daher kommt nebenstehender Quellcode auch ohne Angabe eines Konstruktors aus. Hier wird der Standardkonstruktor verwendet...

... während zweites Beispiel einen Konstruktor zugewiesen bekommt. Dieser ist public erreichbar, was aber nicht zwingend ist. Der Konstruktor hat immer den gleichen Namen wie die Klasse und kann Parameter enthalten.

Die beiden Passagen: public:... Rechteck() in der Klasse und die Definition der Memberfunction Rechteck :: Rechteck()

Sinn und Zweck der Klassen ist natürlich die Arbeitserleichterung, die durch die Vorwegnahme immer wieder auftauchender Prozesse nur noch auf die Eingabe der Daten wartet. Somit sind in der Klasse drei Funktionen enthalten. Hierbei geht es um die Fläche, die Diagonale und den Umfang eines Rechtecks, wozu nur Länge und Breite notwendig sind.

Bemerkt? Das Semikolon hinter der Klasse ist kein Versehen!

Nebenstehender Quellcode - bzw. das ausgeführte Programm - fügt zwei Strings aneinander und wartet in der Klasse mit einer zweiten Funktion auf, welche die Zeichen beider Zeichenketten zählt.

Sobald string.size() definiert ist, können Sie auch einen Integer vergeben, da size bereits numerisch ist. Ferner kommt man hier noch ohne for Schleife aus.

Es ist dies Ihr immer wiederkehrendes Muster, das Sie dazu veranlasst, einen Datentyp zu modellieren. Etwa ein Lehrer, der neben dem Namen des Schülers auch die Jahrgangsstufe und den derzeitigen Notendurchschnitt als Informationen braucht.

Freilich sind dies unterschiedliche Datentypen, die in eine Klasse aufgenommen werden und sorgfältig deklariert werden wollen.

Im Hauptprogramm - im Gegensatz dazu Kopf- oder Headerprogramm - können neue Namen für die Variablen deklariert werden. Achten Sie daher auf die Definitionen unterhalb der Klasse.

Nebenstehendes Programm hat drei Datentypen in der Klasse und dann natürlich auch im Programm selber; je nachdem was aufgenommen wird. Diese drei Datentypen werden unterhalb der Klasse neu definiert.

Der Konstruktor ist void Name: ( string x, int y, double z ) { ... } und der Aufruf heisst dann nomina.werte ( x , y , z ) ; nomina.nomen ( ... )

Vorname und Nachname
Alter
Größe
Gewicht
Body Mass Index ( BMI )0
Werte zurücksetzen

Man kann vom Body Mass Index, diesem groben Richtwert, der zwischen Muskulatur und Fett nicht unterscheidet, halten was man will. Hier habe ich jedenfalls das Alter mit einer schleichenden Toleranz des BMI einberechnet. So fällt der BMI mit zunehmendem Alter etwas besser aus, weil pro Jahr ein minimaler Wert abgezogen wird. Man ist bei der Definition wohl davon ausgegangen, daß der Mensch etwas "stabiler" wird.

Sie können die Körpergröße eingeben, wie Sie wollen. Es wird immer in Dezimale umgerechnet. Die Unterscheidung zwischen Männern und Frauen ergibt sich aus der Körpergrösse.

Im Skript kommt es darauf an, daß die drei übrigen Möglichkeiten abgewählt werden, sobald eine der vier Optionen angewählt ist.

Dazu muss jede der vier Funktionen - für jede Checkbox eine - natürlich alle Variablen bzw. die Oberfläche derer in HTML, auch kennen. Ausserdem sollte es die Möglichkeit geben, nichts von alledem anzuwählen oder besser alle Checkboxes abzuwählen, was die Bedingung ziemlich lang ausfallen lässt.

Und letztlich wechseln auch die Farben, aber das ist dann kein Problem mehr...

"Wie lange dauert eine Olympiade?"
 4 Wochen  6 Monate
 1 Jahr  4 Jahre
Quizmaster
Hier ist also nur eine Antwort richtig und so heisst es pro forma:
4! / ( 4 - 0 )! ⋅ 0! = 24 / 24 = 1
Wenn nicht eine, sondern zur Frage zwei Antworten richtig wären, dann ergäbe sich:
4! / ( 4 - 2 )! ⋅ 2! = 24 / ( 2 ⋅ 2 ) = 6 als mögliche Kombinationen.
Der Faktor 2! nach der Klammer besagt, daß die Reihenfolge unerheblich ist
a ∧ b = b ∧ a

Bool´scher Datentyp  |  Potenzen  |  Fakultäten  |  Checkboxen in Lazarus

Startseite  |  Hinweise und Impressum  |  Facebook  |  Twitter  |  Google plus