Para sa Auto sa C++

Para Sa Auto Sa C



Ang C++ ay nagbibigay ng 'auto' na keyword na nagsasaad na ang uri ng isang variable ay awtomatikong mahihinuha mula sa initializer nito kapag ito ay unang idineklara. Bilang karagdagan, ang mga pamamaraan na ang uri ng pagbabalik ay awtomatikong susuriin ang kanilang expression ng uri ng pagbabalik sa runtime. Maaari din namin itong tukuyin dahil ito ay ginagamit upang awtomatikong makita ang uri ng data ng halaga. Kapag ginamit namin ang 'auto' na keyword na ito sa 'para sa' loop, hindi namin kailangang idagdag ang uri ng data sa bawat iterator. Ang keyword na 'auto' sa loop na 'para sa' ay nagtuturo sa compiler na tukuyin ang uri ng ipinahayag na variable gamit ang pagpapahayag ng pagsisimula nito.

Halimbawa 1:

Ang 'iostream' ay ang unang header file dito kung saan idineklara ang mga function ng C++. Pagkatapos, idinagdag namin ang 'vector' na file ng header na kasama dito upang maaari kaming magtrabaho kasama ang vector at function upang gumana sa mga vector. Pagkatapos, ang 'std' ay ang namespace na ipinapasok namin dito, kaya hindi namin kailangang ilagay ang 'std' na ito kasama ang lahat ng mga function nang paisa-isa sa code na ito. Pagkatapos, ang 'pangunahing()' ay ginagamit dito. Sa ilalim nito, lumikha kami ng vector ng 'int' na uri ng data na may pangalang 'myNewData' at magpasok ng ilang mga halaga ng integer dito.

Pagkatapos nito, inilalagay namin ang 'para sa' loop at ginagamit ang 'auto' na keyword na ito sa loob nito. Ngayon, makikita ng iterator na ito ang uri ng data ng mga halaga dito. Nakukuha namin ang mga halaga ng 'myNewData' vector at i-save ang mga ito sa variable na 'data' at ipinapakita din ang mga ito dito habang idinaragdag namin ang 'data' na ito sa 'cout'.







Code 1:



#include
#include
gamit namespace std ;
int pangunahing ( ) {
vector < int > myNewData { labing-isa , 22 , 33 , 44 , 55 , 66 } ;
para sa ( sasakyan datos : myNewData ) {
cout << datos << endl ;
}
}

Output :
Nakita namin ang lahat ng mga halaga ng vector na ito na naka-print dito. Pini-print namin ang mga halagang ito sa pamamagitan ng paggamit ng 'para sa' loop at paglalagay ng 'auto' na keyword sa loob nito.







Halimbawa 2:

Dito, idinaragdag namin ang 'bits/stdc++.h' dahil naglalaman ito ng lahat ng deklarasyon ng function. Pagkatapos, inilalagay namin ang 'std' namespace dito at pagkatapos ay i-invoke ang 'main()'. Sa ibaba nito, sinisimulan namin ang isang 'set' ng 'string' at pinangalanan ito bilang 'myString'. Pagkatapos, sa susunod na linya, ipinasok namin ang string data dito. Naglalagay kami ng ilang pangalan ng prutas sa set na ito gamit ang 'insert()' na paraan.

Ginagamit namin ang 'para' na loop sa ilalim nito at inilalagay ang 'auto' na keyword sa loob nito. Pagkatapos nito, sinisimulan namin ang isang iterator na may pangalang 'my_it' na may 'auto' na keyword at itinalaga ang 'myString' dito kasama ang 'begin()' function.



Pagkatapos, inilalagay namin ang isang kundisyon na 'my_it' na hindi katumbas ng 'myString.end()' at dagdagan ang halaga ng iterator gamit ang 'my_it++'. Pagkatapos nito, inilalagay namin ang '*my_it' sa 'cout'. Ngayon, ini-print nito ang mga pangalan ng prutas ayon sa pagkakasunud-sunod ng alpabeto, at awtomatikong nade-detect ang uri ng data habang inilalagay namin ang 'auto' na keyword dito.

Code 2:

#include
gamit namespace std ;
int pangunahing ( )
{
itakda < string > myString ;
myString. ipasok ( { 'Ubas' , 'Kahel' , 'saging' , 'peras' , 'mansanas' } ) ;
para sa ( sasakyan aking_ito = myString. magsimula ( ) ; aking_ito ! = myString. wakas ( ) ; aking_ito ++ )
cout << * aking_ito << '' ;

bumalik 0 ;
}

Output:
Dito, mapapansin natin na ang mga pangalan ng prutas ay ipinapakita sa isang alphabetic sequence. Ang lahat ng data ay nai-render dito na ipinasok namin sa string set dahil ginamit namin ang 'para sa' at 'auto' sa nakaraang code.

Halimbawa 3:

Dahil ang 'bits/stdc++.h' ay mayroon na ng lahat ng deklarasyon ng function, idinaragdag namin ito dito. Pagkatapos idagdag ang 'std' namespace, tinatawag namin ang 'main()' mula sa lokasyong ito. Ang 'set' ng 'int' na itinatag namin sa mga sumusunod ay tinatawag na 'myIntegers'. Pagkatapos, idinaragdag namin ang integer data sa sumunod na linya. Ginagamit namin ang 'insert()' na paraan upang magdagdag ng ilang integer sa listahang ito. Ang 'auto' na keyword ay ipinasok na ngayon sa 'para' na loop na ginagamit sa ilalim nito.

Susunod, ginagamit namin ang 'auto' na keyword upang simulan ang isang iterator na may pangalang 'new_it', na nagtatalaga ng 'myIntegers' at ang 'begin()' na mga function dito. Susunod, nag-set up kami ng kundisyon na nagsasaad na ang 'my_it' ay hindi dapat katumbas ng 'myIntegers.end()' at gumamit ng 'new_it++' para taasan ang value ng iterator. Susunod, ipinapasok namin ang '*new_it' sa seksyong 'cout' na ito. Ini-print nito ang mga integer nang pataas. Habang ipinapasok ang keyword na 'auto', awtomatiko nitong nakikita ang uri ng data.

Code 3:

#include
gamit namespace std ;
int pangunahing ( )
{
itakda < int > myIntegers ;
myIntegers. ipasok ( { Apat. Lima , 31 , 87 , 14 , 97 , dalawampu't isa , 55 } ) ;
para sa ( sasakyan bago_ito = myIntegers. magsimula ( ) ; bago_ito ! = myIntegers. wakas ( ) ; bago_ito ++ )
cout << * bago_ito << '' ;

bumalik 0 ;
}

Output :
Ang mga integer ay ipinapakita dito sa pataas na pagkakasunud-sunod tulad ng nakikita sa mga sumusunod. Dahil ginamit namin ang mga terminong 'para sa' at 'auto' sa nakaraang code, ang lahat ng data na inilagay namin sa set ng integer ay na-render dito.

Halimbawa 4:

Ang 'iostream' at ang 'vector' na mga file ng header ay kasama habang nagtatrabaho kami kasama ang mga vectors dito. Ang 'std' namespace ay idinagdag at pagkatapos ay tinatawag namin ang 'main()'. Pagkatapos, sinisimulan namin ang isang vector ng 'int' na uri ng data na may pangalang 'myVectorV1' at magdagdag ng ilang mga halaga sa vector na ito. Ngayon, inilalagay namin ang 'para sa' loop at ginagamit ang 'auto' dito upang makita ang uri ng data. Ina-access namin ang mga halaga ng vector at pagkatapos ay i-print ang mga ito sa pamamagitan ng paglalagay ng 'valueOfVector' sa 'cout'.

Pagkatapos nito, naglalagay kami ng isa pang 'para sa' at ang 'auto' sa loob nito at sinisimulan ito ng '&& valueOfVector : myVectorV1'. Dito, ina-access namin ang sanggunian at pagkatapos ay i-print ang lahat ng mga halaga sa pamamagitan ng paglalagay ng 'valueOfVector' sa 'cout'. Ngayon, hindi namin kailangang ipasok ang uri ng data para sa parehong mga loop habang ginagamit namin ang 'auto' na keyword sa loob ng loop.

Code 4:

#include
#include
gamit namespace std ;
int pangunahing ( ) {
vector < int > myVectorV1 = { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 } ;
para sa ( sasakyan valueOfVector : myVectorV1 )
cout << valueOfVector << '' ;
cout << endl ;
para sa ( sasakyan && valueOfVector : myVectorV1 )
cout << valueOfVector << '' ;
cout << endl ;
bumalik 0 ;
}

Output:
Ang lahat ng data ng vector ay ipinapakita. Ang mga numero na ipinapakita sa unang linya ay ang mga na-access namin sa pamamagitan ng mga halaga, at ang mga numero na ipinapakita sa pangalawang linya ay ang mga na-access namin sa pamamagitan ng sanggunian sa code.

Halimbawa 5:

Pagkatapos tawagan ang 'pangunahing()' na pamamaraan sa code na ito, sinisimulan namin ang dalawang array na 'myFirstArray' na may sukat na '7' na may 'int' na uri ng data at 'mySecondArray' na may sukat na '7' ng 'double' uri ng datos. Ipinasok namin ang mga halaga sa parehong mga array. Sa unang array, ipinapasok namin ang mga halaga ng 'integer'. Sa pangalawang array, idinaragdag namin ang mga 'double' na halaga. Pagkatapos nito, ginagamit namin ang 'para sa' at ipasok ang 'auto' sa loop na ito.

Dito, gumagamit kami ng 'range base para sa' loop para sa 'myFirstArray'. Pagkatapos, inilalagay namin ang 'myVar' sa 'cout'. Sa ibaba nito, naglalagay kami ng loop muli at ginagamit ang 'range base para sa' loop. Ang loop na ito ay para sa 'mySecondArray' at pagkatapos ay i-print din namin ang mga halaga ng array na iyon.

Code 5:

#include
gamit namespace std ;
int pangunahing ( )
{
int myFirstArray [ 7 ] = { labinlima , 25 , 35 , Apat. Lima , 55 , 65 , 75 } ;
doble mySecondArray [ 7 ] = { 2.64 , 6.45 , 8.5 , 2.5 , 4.5 , 6.7 , 8.9 } ;
para sa ( const sasakyan at myVar : myFirstArray )
{
cout << myVar << '' ;
}
cout << endl ;
para sa ( const sasakyan at myVar : mySecondArray )
{
cout << myVar << '' ;
}
bumalik 0 ;
}

Output:
Ang lahat ng data ng parehong mga vector ay ipinapakita sa kinalabasan dito.

Konklusyon

Ang konseptong 'para sa auto' ay pinag-aralan nang husto sa artikulong ito. Ipinaliwanag namin na nakikita ng 'auto' ang uri ng data nang hindi ito binabanggit. Nag-explore kami ng maraming halimbawa sa artikulong ito at nagbigay din ng paliwanag ng code dito. Malalim naming ipinaliwanag ang paggana nitong konseptong 'para sa sasakyan' sa artikulong ito.