Unsere Datenschutzrichtlinie wird in Kürze aktualisiert. Bitte sehen Sie sich die Vorschau an.

C++

Konstruktor

Testen Sie unsere 2015 Kurse

10 Tage kostenlos!

Jetzt testen Alle Abonnements anzeigen
Sehen Sie den Aufbau eines Konstruktors und erfahren Sie vom Trainer, wozu Sie diesen benötigen und wie dieser zu schreiben ist.

Transkript

Ich will Ihnen zegen, wie man Konstruktoren definieren kann. Das ist ein Teil mit dem man zum Beispiel Variablen in einer Klasse initialisieren kann, und zwar wenn die Klasse erzeugt wird. Also zunachst einmal klassisch hätte man ja eigetlich sowas shreiben wollen: int i1=0, damit habe ich es mit einem Wert 0 belegt. Das geht aber nicht bei struct, geht sowas natürlich auch nicht. Wenn ich das irgedwie definieren möchte, wenn ich dich lasse später instanziiere, wie man sagt, Dann muss ich einen Konstruktor definieren und der Konstruktor, das ist hier ein solcher klassischer Konstruktor, der heißt genau so wie die Klasse oben heißt. Der muss genau so heißen. Klammer auf, Klammer zu ist der Standardkonstruktor und da kann ich jetzt zum Beispiel reinschreiben: i1=0, name ="leer" oder was auch immer ich im Namen haben möchte. Der wird automatisch aufgerufen, den brauche ich nicht selber aufrufen. Wenn man die Variable unten nicht zeigt, in das mal hier zum Beispiel mit rdkclass c1 instanziiert oder auch Menü zum Beispiel anlegt, dann wird der aufgerufen. Manchmal möchte man aber auch einen etwas komfortableren Konstruktor haben, nämlich mit Parametern und das geht auch. Ich habe hier einen mit int1, string name und weise hier einfach die Parameter entsprechend zu. Sowas geht auch, den muss man natürlich ja auch entsprechend aufrufen nachher. Eine weitere Form hier nochmal: Rdkclass (int i) als Parameter ist ein Konstruktor den ich jetzt hier nicht definiere, sondern nur deklariere, muss ich also später definieren. Und hier haben wir das, was wir früher schon verwendet hatten: Setzewert, ein Setter und ein Getterdefiniert, einen für den Namen auch, addiere 1 drauf, ist auch wieder extern deklariert, beziehungsweise definiert, das verwechsele ich auch immer gerne, diese beiden Begriff, muss man ein bisschen aufpassen und eine Ausgaberoutine oder Methode habe ich hier natürlich auch noch, möchte das gerne auch ausgeben, dann habe ich das gleich immer in meiner Klassendefinition mit drin. So, hier habe ich jetzt diese addone, das kennen wir ja schon, das ist hier jetzt eben extern deklariert und nicht inline,wie man sagt und hier habe ich jetzt den Konstruktor, übrigens wichtig kein return type dahinter schreiben, Konstruktoren haben kein return, sondern der Return ist ja sozusagem die Klasse selber. Hier habe ich also die Parameter int i1: i1 (i) name ("Hallo") ist noch eine Besonderheit. Ich könnte das hier unten initialisieren: Ich kann das aber auch so machen, indem ich hier einfach den Wert hinschreibe, das ist eine Besonderheit der C++ Notation, mit Doppelpunkt getrennt i1 (i) verwendet einfach den Wert i hier, schiebt ihn sozusagen in i1 rein und name kommt hier jetzt gar nicht als Parameter vor, kann ich auch hier enfach mit einem string initialisieren. Also das verwendet man ganz gerne zur Initialisierung von Variablen, die hier innen eben vorkommen. Ist einfach eine abkürzende Schreibweise, macht es ein bisschen einfacher, muss man hier nicht immer diese umständlichen Zuweisungen schreiben . Gut jetzt kommen wir zum Hauptprogramm. Da habe ich jetzt einmal c1 hier einfach definiert, dann c2, aber diesmal mit Parametern, da wird halt unsere Methode aufgerufen, die wir hier als Konstruktor haben mit den 2 Parametern und c3 (43), das ist dann die entsprechende Konstruktormethode, die ich hier aufrufe, die Hallo als default auch definiert. Dann gebe ich das ganze aus. Wie setzen hier nochmal eine Variable, addieren 1 drauf, wie vorher beim ersten Beispiel und dann gebe ich das ganze aus und wir schauen uns mal an, ob das auch tatsächlich das alles tut. Und es sieht doch ganz gut aus. 0 Leer das ist unser Default Konstruktor, ohne Parameter ist eben 0 und Leer drin, 1 weiteres ist der erste Aufruf mit den Parametern und 43 mit dem Default Hallo ist der zweite Aufruf und dann haben wir hier mit setze das ganze verändert und 1 drauf addiert, deshalb steht hier auch 101 da und nicht 100 wie ich hier oben angegeben habe,hier wird es drauf addiert. Ja, auf die Art und Weise kann ich eigentlich schon alles machen mit Klassen. Jetzt haben wir schon fast alles kennengelernt. Sie können jetzt schonmal Klassen Definieren, Methoden dazu und auch Konstruktoren.

C++

Machen Sie sich mit den einfachen Grundlagen zu C++ vertraut und lernen Sie anhand zahlreicher Übungs- und Codebeispiele die Klassenkonzepte, Prozeduren und Funktionen kennen.

9 Std. 3 min (143 Videos)
Derzeit sind keine Feedbacks vorhanden...
 

Video-Training auf DVD mit Bonusmagazin

+ Tutorial to go: Mit Videos für iPod, iPhone & Co.

Dieser Online-Kurs ist als Download und als Streaming-Video verfügbar. Die gute Nachricht: Sie müssen sich nicht entscheiden - sobald Sie das Training erwerben, erhalten Sie Zugang zu beiden Optionen!

Der Download ermöglicht Ihnen die Offline-Nutzung des Trainings und bietet die Vorteile einer benutzerfreundlichen Abspielumgebung. Wenn Sie an verschiedenen Computern arbeiten, oder nicht den ganzen Kurs auf einmal herunterladen möchten, loggen Sie sich auf dieser Seite ein, um alle Videos des Trainings als Streaming-Video anzusehen.

Wir hoffen, dass Sie viel Freude und Erfolg mit diesem Video-Training haben werden. Falls Sie irgendwelche Fragen haben, zögern Sie nicht uns zu kontaktieren!