C ++ Initialisiererlisten

C ++ Initialisiererlisten
Möglicherweise haben Sie in vielen Programmiersprachen an Listenvariablen gearbeitet, die im Code verwendet werden können. Listen sind eine der wenigen Datenstrukturvariablen, die verwendet werden, um mehr als einen Wert gleichzeitig zu speichern. Haben Sie die Liste jedoch verwendet, um einige Klassendatenmitglieder beim Codieren zu initialisieren? Die Initialisiererlisten sind die in der Programmierung verwendeten Datenstrukturen, um einige Datenelemente der spezifischen Klasse zu initialisieren. Wenn Sie es bisher nicht getan haben und nach so etwas suchen, erhalten Sie in diesem Artikelhandbuch eine ganz neue Erfahrung. Dieser Artikel zeigt mehrere einfache Beispiele, um die Funktion der Verwendung von Initialisiererlisten in C anzuzeigen++. Man sollte einen G ++ - Compiler auf ihrem System konfigurieren, wenn sie am Ubuntu 20 arbeiten.04 System. Beginnen Sie mit dem Start der im Ubuntu -System gefundenen „Terminal“ -Anwendung.

Beispiel 01

Starten Sie Ihr erstes C ++ - Beispiel für die Initialisiererliste mit der Erstellung eines neuen C ++ - Dokuments. Das gleichmäßige grüne "Touch" -Word kann hier verwendet werden, um eine Datei mit dem Namen "InitList" zu generieren.CC ”. Sie finden diese Datei im Home -Ordner, indem Sie den Datei -Explorer in der Seitenwendungsleiste auf Ubuntu 20 öffnen.04. GNU Nano Editor ist hier, um die „InitList zu starten.CC ”-Datei. Ihre Datei wird schnell im Editor in der Shell geöffnet:

Der C ++ - Code muss den Standard -Namespace und den IO -Stream in ihm enthalten, wie wir es unten getan haben. Die "Test" -Kurs wird mit zwei privaten Datenmitgliedern initialisiert, "A" und "B". Die Initialisiererliste wurde mit dem öffentlichen Konstruktor "test ()" verwendet, um eine Liste der beiden Datenmitglieder "A" und "B" zu erstellen. Der Dickdarm wurde verwendet, um den Konstruktor und die Initialisiererliste zu trennen. Dann zwei benutzerdefinierte Funktionen, ich.e., geta () und getb () werden initialisiert, um die Werte für beide Datenelemente getrennt von der mit dem Konstruktor verwendeten Initialisierungsliste zu erhalten und das Ergebnis an die Hauptfunktion zurückzugeben. Die Klasse endet hier und die Funktion main () beginnt. In der Main () -Methode haben wir ein Objekt "t" der Klasse "Test" erstellt, die "test" sind. Das Objekt nimmt zwei parametrische Werte von Ganzzahltypen auf, und der Konstruktor wird automatisch aufgerufen, um die Datenelement -Werte mit der Initialisierungsliste festzulegen.

Die Standard -Cout -Klauseln werden danach verwendet, um beide Datenmitgliedwerte auf der Shell mithilfe des Objekts „T“ die Funktionen „geta ()“ und „getb ()“ anzusehen. Die Hauptfunktion schließt hier und der Code wird beendet. Speichern Sie Ihren Code und führen Sie ihn in der Shell aus:

Wir haben den vorherigen Code mit dem G ++ - Compiler -Paket zusammengestellt. Bei der Ausführung haben wir beide die Datenmitgliedwerte getrennt auf der Shell:

Beispiel 02

In unserem zweiten Beispiel werden wir die Initialisierungsliste für die Initialisierung einiger nicht statischer Datenmitglieder konstanter Typ in C ++-Code verwenden. Nach dem Namespace wurde die Klasse mit dem Namen "New" mit einer privaten Ganzzahlvariablen "N" initialisiert, die eine private Ganzzahl -Variable initialisiert hat, initialisiert. Die Funktion der öffentlichen Konstruktor -Funktion wird zusammen mit der Initialisierungsliste verwendet, um ein konstantes Datenmitglied „N“ zu initialisieren. Eine neue Funktion „get ()“ auf dem Ganzzahl -Rückgabetyp wurde verwendet, um den Wert des Datenmitglieds „N“ an die Hauptfunktion zurückzugeben. Die Funktion main () erstellt ein Objekt N1 der Klasse „neu“, während sie einen Wert „13“ als Argument übergeben.

Der Konstruktor wird aufgerufen und die Initialisierungsliste setzt den Wert des Datenmitglieds "N". Die Funktion get () wurde innerhalb der Cout -Klausel aufgerufen, um den festgelegten Wert der Datenelemente in der Shell mit dem Objekt "N1" anzuzeigen. Die Hauptfunktion und die Programme enden hier:

Wir verwenden die Initialisiererliste, um den Wert für einige nicht statische Konstante Datenmitglieder in C zu initialisieren++. Die Ausgabe für diesen Code zeigt den konstanten Wert 13 in der Shell:

Beispiel 03

Benutzer können die Initialisiererliste auch mit dem Konstruktor verwenden, um einige Referenzdatenmitglieder zu initialisieren. Innerhalb der Klasse „Neu“ haben wir die Referenzvariable „n“ des Ganzzahl verwendet. Der öffentliche Konstruktor hat die Initialisierungsliste verwendet, um das Referenzdatenelement mit einem gewissen Wert zu initialisieren. Die Funktion „get ()“ wird erneut verwendet, um den Wert von einer Initialisierungsliste zu erhalten und an das Terminal zurückzugeben. Innerhalb der Hauptfunktion haben wir eine Ganzzahl „A“ mit Wert 13 initialisiert.

Das Klassenobjekt „N1“ wurde mit der Variablen „A“ übergeben, und der Konstruktor wird aufgerufen, um das Referenzdatenelement mithilfe der Initialisierungsliste zu initialisieren. In der Cout -Anweisung wird der Wert initialisierte Referenzdatenmitglied mithilfe der Methode „get ()“ mit Hilfe eines Objekts „N1“ erhalten. Die Variable "A" wurde mit dem neuen Wert aktualisiert, ich.e., 23. Die Cout -Anweisung wird erneut verwendet, um den aktualisierten Wert aus der Funktion get () zu erhalten. Die Variable "A" wurde mit der Referenzvariablen "n" gebunden. Jedes Mal, wenn wir den Wert aktualisieren, wird das neue auf der Shell ausgegeben:

Kompilieren Sie den Code zuerst und führen Sie ihn danach aus. Es gibt den ersten Wert der Referenzvariablen und dann die aktualisierte auf der Shell aus. So funktioniert die Initialisiererliste als Referenzdatenmitglieder:

Beispiel 04

Die Initialisierungsliste kann auch für die Objektinitialisierung verwendet werden, während sie in mehr als einer Klasse in C arbeitet++. Wir haben also die beiden Klassen ein und zwei in unserem neu erstellten Code verwendet. Die erste Klasse mit dem Namen "One" enthält die Ganzzahlvariable "Val". Es enthält auch den Definitionsprototyp der Konstruktorfunktion „eins“, wobei ein Teilzahlwert eingenommen wird. Die Klasse wurde geschlossen und enthält keinen Standardkonstruktor darin. Der Konstruktor wurde außerhalb dieser Klasse „A“ initialisiert, wodurch der Ganzzahl -Typ -Wert direkt aus der Hauptfunktion erhältlich ist. Dieser Wert wurde unter Verwendung der Cout -Anweisung unter Verwendung des darin variablen "Val" angezeigt. Eine andere Klasse, "zwei", wurde mit einem Klasse "ein" -Objekt definiert, ich.e., "A". Diese Klasse enthält auch den Definitionsprototyp des Konstruktors.

Nach dieser Klasse haben wir seinen Klassenkonstruktor außerhalb der Initialisiererliste verwendet, um den Wert für ein Objekt „A“ der Klasse „One“ direkt zu erhalten. Die Cout -Erklärung hat gezeigt, dass wir in der Klasse „Two“ -Konstruktor arbeiten. Innerhalb der Hauptfunktion haben wir das Objekt der Klasse „zwei“ erstellt und ihm einen Wert 13 an seine Initialisiererliste übergeben, die mit seinem Konstruktor gehalten werden. Diese Initialisiererliste nennt das Objekt "A" der Klasse "eins" und übergibt dann den Wert an den "Ein" -Konstruktor der Klasse. Der Konstruktor wird ausgeführt und der Wert wird in das Variable „Val“ gespeichert und auf der Schale angezeigt. Die Kontrolle kam auf den Klassenkonstruktor zurück, und die Cout -Anweisung wird ausgeführt:

Im Gegenzug haben wir das folgende Ergebnis. Es gibt den variablen "Val" -Wert auf der Schale zusammen mit der Anweisung aus, dass sie in der Klasse "Eins" oder "zwei" Konstruktor ausgeführt wurde.

Abschluss

Dieser Artikel enthält mehrere Beispiele für die Verwendung von Initialisiererlisten in C ++ - Programmen. Wir haben die Verwendung einer Initialisiererliste gesehen. Wir hoffen, dieser Artikel wird für Sie funktionieren. Bitte lesen Sie mehr informative Artikel unter LinuxHint.