Für Auto in C++

Fur Auto In C



C++ stellt das Schlüsselwort „auto“ bereit, das angibt, dass der Typ einer Variablen bei der ersten Deklaration automatisch von ihrem Initialisierer abgeleitet wird. Darüber hinaus prüfen die Methoden, deren Rückgabetyp „auto“ ist, ihren Rückgabetypausdruck zur Laufzeit. Wir können es auch so definieren, dass es zur automatischen Erkennung des Datentyps des Werts verwendet wird. Wenn wir dieses „auto“-Schlüsselwort in der „for“-Schleife verwenden, müssen wir den Datentyp nicht bei jedem Iterator hinzufügen. Das Schlüsselwort „auto“ in der „for“-Schleife weist den Compiler an, den Typ einer deklarierten Variablen mithilfe ihres Initialisierungsausdrucks zu bestimmen.

Beispiel 1:

Der „iostream“ ist hier die erste Header-Datei, in der die Funktionen von C++ deklariert werden. Dann fügen wir die hier enthaltene „Vektor“-Header-Datei hinzu, damit wir mit dem Vektor und der Funktion arbeiten können, um Vektoren zu bearbeiten. Dann ist „std“ der Namespace, den wir hier einfügen, sodass wir diesen „std“ mit allen Funktionen nicht einzeln in diesen Code einfügen müssen. Dann wird hier „main()“ aufgerufen. Darunter erstellen wir einen Vektor vom Datentyp „int“ mit dem Namen „myNewData“ und fügen darin einige ganzzahlige Werte ein.

Danach platzieren wir die „for“-Schleife und verwenden darin das Schlüsselwort „auto“. Nun erkennt dieser Iterator den Datentyp der Werte hier. Wir erhalten die Werte des Vektors „myNewData“, speichern sie in der Variablen „data“ und zeigen sie auch hier an, wenn wir diese „data“ im „cout“ hinzufügen.







Code 1:



#include
#include
verwenden Namensraum std ;
int hauptsächlich ( ) {
Vektor < int > meineNeuenDaten { elf , 22 , 33 , 44 , 55 , 66 } ;
für ( Auto Daten : meineNeuenDaten ) {
cout << Daten << endl ;
}
}

Ausgabe :
Wir haben alle hier abgedruckten Werte dieses Vektors gesehen. Wir drucken diese Werte aus, indem wir die „for“-Schleife verwenden und darin das Schlüsselwort „auto“ einfügen.







Beispiel 2:

Hier fügen wir „bits/stdc++.h“ hinzu, da es alle Funktionsdeklarationen enthält. Dann fügen wir hier den Namensraum „std“ ein und rufen dann „main()“ auf. Darunter initialisieren wir einen „Satz“ von „String“ und nennen ihn „myString“. Dann fügen wir in der nächsten Zeile die String-Daten ein. In diesen Satz fügen wir mit der Methode „insert()“ einige Fruchtnamen ein.

Wir verwenden die „for“-Schleife darunter und platzieren darin das Schlüsselwort „auto“. Anschließend initialisieren wir einen Iterator mit dem Namen „my_it“ mit dem Schlüsselwort „auto“ und weisen diesem „myString“ zusammen mit der Funktion „begin()“ zu.



Dann platzieren wir eine Bedingung, die „my_it“ ungleich „myString.end()“ ist, und erhöhen den Wert des Iterators mit „my_it++“. Danach platzieren wir „*my_it“ im „cout“. Jetzt werden die Fruchtnamen in alphabetischer Reihenfolge gedruckt und der Datentyp wird automatisch erkannt, da wir hier das Schlüsselwort „auto“ platziert haben.

Code 2:

#include
verwenden Namensraum std ;
int hauptsächlich ( )
{
Satz < Zeichenfolge > meinString ;
meinString. einfügen ( { 'Trauben' , 'Orange' , 'Banane' , 'Birne' , 'Apfel' } ) ;
für ( Auto mein_es = meinString. beginnen ( ) ; mein_es ! = meinString. Ende ( ) ; mein_es ++ )
cout << * mein_es << ' ' ;

zurückkehren 0 ;
}

Ausgabe:
Hier fällt auf, dass die Fruchtnamen in alphabetischer Reihenfolge angezeigt werden. Hier werden alle Daten gerendert, die wir in den String-Satz eingefügt haben, weil wir im vorherigen Code „for“ und „auto“ verwendet haben.

Beispiel 3:

Da „bits/stdc++.h“ bereits alle Funktionsdeklarationen enthält, fügen wir sie hier hinzu. Nachdem wir den Namensraum „std“ hinzugefügt haben, rufen wir von dieser Stelle aus „main()“ auf. Die „Menge“ von „int“, die wir im Folgenden erstellt haben, heißt „myIntegers“. Dann fügen wir die ganzzahligen Daten in der folgenden Zeile hinzu. Wir verwenden die Methode „insert()“, um dieser Liste einige ganze Zahlen hinzuzufügen. Das Schlüsselwort „auto“ wird nun in die darunter verwendete „for“-Schleife eingefügt.

Als nächstes verwenden wir das Schlüsselwort „auto“, um einen Iterator mit dem Namen „new_it“ zu initialisieren und ihm die Funktionen „myIntegers“ und „begin()“ zuzuweisen. Als Nächstes richten wir eine Bedingung ein, die besagt, dass „my_it“ nicht gleich „myIntegers.end()“ sein darf, und verwenden „new_it++“, um den Wert des Iterators zu erhöhen. Als nächstes fügen wir „*new_it“ in diesen „cout“-Abschnitt ein. Es gibt die ganzen Zahlen aufsteigend aus. Wenn das Schlüsselwort „auto“ eingefügt wird, wird der Datentyp automatisch erkannt.

Code 3:

#include
verwenden Namensraum std ;
int hauptsächlich ( )
{
Satz < int > meineIntegers ;
meineIntegers. einfügen ( { Vier fünf , 31 , 87 , 14 , 97 , einundzwanzig , 55 } ) ;
für ( Auto new_it = meineIntegers. beginnen ( ) ; new_it ! = meineIntegers. Ende ( ) ; new_it ++ )
cout << * new_it << ' ' ;

zurückkehren 0 ;
}

Ausgabe :
Die Ganzzahlen werden hier in aufsteigender Reihenfolge angezeigt, wie im Folgenden dargestellt. Da wir im vorherigen Code die Begriffe „for“ und „auto“ verwendet haben, werden hier alle Daten gerendert, die wir in den Integer-Satz eingefügt haben.

Beispiel 4:

Die Header-Dateien „iostream“ und „vector“ sind enthalten, da wir hier mit den Vektoren arbeiten. Anschließend wird der Namespace „std“ hinzugefügt und wir rufen dann „main()“ auf. Anschließend initialisieren wir einen Vektor vom Datentyp „int“ mit dem Namen „myVectorV1“ und fügen diesem Vektor einige Werte hinzu. Jetzt platzieren wir die „for“-Schleife und verwenden hier „auto“, um den Datentyp zu erkennen. Wir greifen auf die Werte des Vektors zu und drucken sie dann aus, indem wir „valueOfVector“ in „cout“ einfügen.

Danach platzieren wir ein weiteres „for“ und das „auto“ darin und initialisieren es mit „&& valueOfVector : myVectorV1“. Hier greifen wir über die Referenz zu und drucken dann alle Werte aus, indem wir „valueOfVector“ in „cout“ einfügen. Jetzt müssen wir den Datentyp nicht für beide Schleifen einfügen, da wir das Schlüsselwort „auto“ innerhalb der Schleife verwenden.

Code 4:

#include
#include
verwenden Namensraum std ;
int hauptsächlich ( ) {
Vektor < int > myVectorV1 = { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 } ;
für ( Auto valueOfVector : myVectorV1 )
cout << valueOfVector << ' ' ;
cout << endl ;
für ( Auto && valueOfVector : myVectorV1 )
cout << valueOfVector << ' ' ;
cout << endl ;
zurückkehren 0 ;
}

Ausgabe:
Alle Daten des Vektors werden angezeigt. Die Zahlen, die in der ersten Zeile angezeigt werden, sind diejenigen, auf die wir über Werte zugegriffen haben, und die Zahlen, die in der zweiten Zeile angezeigt werden, sind diejenigen, auf die wir per Referenz im Code zugegriffen haben.

Beispiel 5:

Nach dem Aufruf der Methode „main()“ in diesem Code initialisieren wir zwei Arrays, nämlich „myFirstArray“ der Größe „7“ mit dem Datentyp „int“ und „mySecondArray“ mit der Größe „7“ des Datentyps „double“. Datentyp. Wir fügen die Werte in beide Arrays ein. Im ersten Array fügen wir die „integer“-Werte ein. Im zweiten Array fügen wir die „doppelten“ Werte hinzu. Danach nutzen wir das „for“ und fügen das „auto“ in diese Schleife ein.

Hier verwenden wir eine „range base for“-Schleife für das „myFirstArray“. Dann platzieren wir „myVar“ im „cout“. Darunter platzieren wir erneut eine Schleife und nutzen die „range base for“-Schleife. Diese Schleife ist für „mySecondArray“ und dann drucken wir auch die Werte dieses Arrays.

Code 5:

#include
verwenden Namensraum std ;
int hauptsächlich ( )
{
int myFirstArray [ 7 ] = { fünfzehn , 25 , 35 , Vier fünf , 55 , 65 , 75 } ;
doppelt mySecondArray [ 7 ] = { 2,64 , 6.45 , 8.5 , 2.5 , 4.5 , 6.7 , 8.9 } ;
für ( const Auto & meineVar : myFirstArray )
{
cout << meineVar << ' ' ;
}
cout << endl ;
für ( const Auto & meineVar : mySecondArray )
{
cout << meineVar << ' ' ;
}
zurückkehren 0 ;
}

Ausgabe:
In diesem Ergebnis werden hier alle Daten beider Vektoren angezeigt.

Abschluss

Das „für Auto“-Konzept wird in diesem Artikel ausführlich untersucht. Wir haben erklärt, dass „auto“ den Datentyp erkennt, ohne ihn zu erwähnen. Wir haben in diesem Artikel mehrere Beispiele untersucht und hier auch die Codeerklärung bereitgestellt. In diesem Artikel haben wir die Funktionsweise dieses „für Autos“-Konzepts ausführlich erklärt.