За Ауто у Ц++

Za Auto U C



Ц++ обезбеђује кључну реч „ауто” која указује да ће тип променљиве бити аутоматски изведен из њеног иницијализатора када је први пут декларисана. Поред тога, методе чији је тип враћања ауто ће испитати свој израз типа повратка у току извршавања. Такође можемо да га дефинишемо јер се користи за аутоматско откривање типа података вредности. Када користимо ову кључну реч „ауто” у „фор” петљи, не морамо да додајемо тип података са сваким итератором. Кључна реч „ауто” у петљи „фор” даје упутства компајлеру да одреди тип декларисане променљиве користећи њен израз за иницијализацију.

Пример 1:

„иостреам“ је прва датотека заглавља овде у којој су декларисане функције Ц++-а. Затим додајемо датотеку заглавља „вектора“ која је овде укључена како бисмо могли да радимо са вектором и функцијом за рад на векторима. Затим, „стд“ је именски простор који овде убацујемо, тако да не морамо да стављамо овај „стд“ са свим функцијама појединачно у овај код. Затим се овде позива „маин()“. Испод овога креирамо вектор типа података „инт“ са именом „миНевДата“ и убацујемо неке целобројне вредности у њега.

Након тога, постављамо петљу „фор“ и користимо ову „ауто“ кључну реч унутар ње. Сада ће овај итератор открити тип података вредности овде. Добијамо вредности вектора „миНевДата“ и чувамо их у променљивој „дата“ и такође их приказујемо овде док додајемо ове „податке“ у „цоут“.







Код 1:



#инцлуде <иостреам>
#инцлуде <вектор>
Користећи именског простора стд ;
инт главни ( ) {
вектор < инт > миНевДата { Једанаест , 22 , 33 , 44 , 55 , 66 } ;
за ( ауто података : миНевДата ) {
цоут << података << ендл ;
}
}

Излаз :
Видели смо све вредности овог вектора које су овде одштампане. Ове вредности штампамо тако што користимо петљу „фор“ и стављамо кључну реч „ауто“ у њу.







Пример 2:

Овде додајемо „битс/стдц++.х“ пошто садржи све декларације функција. Затим овде стављамо „стд“ именски простор и затим позивамо „маин()“. Испод овога иницијализујемо „скуп“ „стринг“ и именујемо га као „миСтринг“. Затим, у следећем реду, у њега убацујемо низ података. У овај сет убацујемо нека имена воћа помоћу методе „инсерт()“.

Користимо петљу „фор“ испод овога и стављамо кључну реч „ауто“ у њу. Након овога, иницијализујемо итератор са именом „ми_ит“ са кључном речи „ауто“ и додељујемо „миСтринг“ овоме заједно са функцијом „бегин()“.



Затим постављамо услов који је „ми_ит“ који није једнак „миСтринг.енд()“ и повећавамо вредност итератора користећи „ми_ит++“. Након овога, стављамо „*ми_ит“ у „цоут“. Сада штампа имена воћа према абецедном редоследу, а тип података се аутоматски детектује пошто смо овде поставили кључну реч „ауто“.

Код 2:

#инцлуде <битс/стдц++.х>
Користећи именског простора стд ;
инт главни ( )
{
комплет < низ > миСтринг ;
миСтринг. уметнути ( { 'Грожђе' , 'наранџаста' , 'банана' , 'Крушка' , 'јабука' } ) ;
за ( ауто ми_ит = миСтринг. започети ( ) ; ми_ит ! = миСтринг. крај ( ) ; ми_ит ++ )
цоут << * ми_ит << ' ' ;

повратак 0 ;
}

Излаз:
Овде можемо приметити да су називи воћа приказани абецедним редом. Овде се приказују сви подаци које смо убацили у скуп стрингова јер смо користили „за“ и „ауто“ у претходном коду.

Пример 3:

Пошто „битс/стдц++.х” већ има све декларације функција, ми га додајемо овде. Након додавања „стд“ именског простора, позивамо „маин()“ са ове локације. „Скуп“ „инт“ који смо установили у наставку назива се „миИнтегерс“. Затим додајемо целобројне податке у ред који следи. Користимо методу „инсерт()“ да додамо неколико целих бројева овој листи. Кључна реч „ауто” је сада уметнута у петљу „фор” која се користи испод.

Затим користимо кључну реч „ауто“ да иницијализујемо итератор са именом „нев_ит“, додељујући му функције „миИнтегерс“ и „бегин()“. Затим постављамо услов који каже да „ми_ит“ не сме бити једнак „миИнтегерс.енд()“ и користимо „нев_ит++“ да повећамо вредност итератора. Затим убацујемо „*нев_ит“ у овај одељак „цоут“. Штампа целе бројеве узлазно. Како је кључна реч „ауто” уметнута, она аутоматски открива тип података.

Код 3:

#инцлуде <битс/стдц++.х>
Користећи именског простора стд ;
инт главни ( )
{
комплет < инт > миИнтегерс ;
миИнтегерс. уметнути ( { Четири, пет , 31 , 87 , 14 , 97 , двадесет један , 55 } ) ;
за ( ауто нев_ит = миИнтегерс. започети ( ) ; нев_ит ! = миИнтегерс. крај ( ) ; нев_ит ++ )
цоут << * нев_ит << ' ' ;

повратак 0 ;
}

Излаз :
Овде су цели бројеви приказани узлазним редоследом као што се види у наставку. Пошто смо користили термине „за“ и „ауто“ у претходном коду, сви подаци које смо ставили у целобројни скуп се приказују овде.

Пример 4:

Датотеке заглавља „иостреам“ и „вецтор“ су укључене док овде радимо са векторима. Затим се додаје именски простор „стд“ и тада позивамо „маин()“. Затим иницијализујемо вектор типа података „инт“ са именом „миВецторВ1“ и додамо неке вредности овом вектору. Сада постављамо петљу „фор“ и користимо „ауто“ овде да бисмо открили тип података. Приступамо по вредностима вектора, а затим их штампамо постављањем „валуеОфВецтор“ у „цоут“.

После овога, стављамо још један „фор“ и „ауто“ унутар њега и иницијализујемо га са „&& валуеОфВецтор : миВецторВ1“. Овде приступамо референцом, а затим штампамо све вредности стављањем „валуеОфВецтор“ у „цоут“. Сада, не морамо да убацујемо тип података за обе петље јер користимо кључну реч „ауто” унутар петље.

Код 4:

#инцлуде <иостреам>
#инцлуде <вектор>
Користећи именског простора стд ;
инт главни ( ) {
вектор < инт > миВецторВ1 = { 0 , 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 , 9 , 10 } ;
за ( ауто валуеОфВецтор : миВецторВ1 )
цоут << валуеОфВецтор << '' ;
цоут << ендл ;
за ( ауто && валуеОфВецтор : миВецторВ1 )
цоут << валуеОфВецтор << '' ;
цоут << ендл ;
повратак 0 ;
}

Излаз:
Приказују се сви подаци вектора. Бројеви који су приказани у првом реду су они којима смо приступили по вредностима, а бројеви који су приказани у другом реду су они којима смо приступили референцом у коду.

Пример 5:

Након позивања методе „маин()“ у овом коду, иницијализујемо два низа који су „миФирстАрраи“ величине „7“ са типом података „инт“ и „миСецондАрраи“ са величином „7“ од „доубле“ тип података. Убацујемо вредности у оба низа. У први низ убацујемо „целобројне“ вредности. У другом низу додајемо „двоструке“ вредности. Након тога, користимо „за“ и убацујемо „ауто“ у ову петљу.

Овде користимо „основу опсега за“ петљу за „миФирстАрраи“. Затим стављамо „миВар“ у „цоут“. Испод овога поново постављамо петљу и користимо петљу „основа опсега за“. Ова петља је за „миСецондАрраи“ и тада такође штампамо вредности тог низа.

Код 5:

#инцлуде <иостреам>
Користећи именског простора стд ;
инт главни ( )
{
инт миФирстАрраи [ 7 ] = { петнаест , 25 , 35 , Четири, пет , 55 , 65 , 75 } ;
дупло миСецондАрраи [ 7 ] = { 2.64 , 6.45 , 8.5 , 2.5 , 4.5 , 6.7 , 8.9 } ;
за ( конст ауто & миВар : миФирстАрраи )
{
цоут << миВар << ' ' ;
}
цоут << ендл ;
за ( конст ауто & миВар : миСецондАрраи )
{
цоут << миВар << ' ' ;
}
повратак 0 ;
}

Излаз:
Сви подаци оба вектора приказани су у овом исходу овде.

Закључак

Концепт „за ауто“ је детаљно проучен у овом чланку. Објаснили смо да „ауто“ детектује тип података без помињања. Истражили смо више примера у овом чланку, а овде смо дали и објашњење кода. У овом чланку смо детаљно објаснили рад овог концепта „за ауто“.