சி ++ இல் வரைபடத்தை எப்படி மீண்டும் செய்வது

How Iterate Over Map C



இந்த விரைவான டுடோரியலில், C ++ இல் வரைபடத்தில் எவ்வாறு திரும்பச் செய்வது என்று பார்ப்போம்.

சி ++ இல் வரைபடத்தை மீண்டும் செய்ய பல வழிகள் உள்ளன. சி ++ இன் புதிய பதிப்புகளுடன், சி ++ இல் உள்ள வரைபடத்தை மீண்டும் செய்ய மேம்பட்ட வழிகள் உள்ளன.







ஒவ்வொன்றாக ஒவ்வொன்றாக செல்லலாம்.



Stp :: வரைபடத்துடன் வளையத்தைப் பயன்படுத்துதல்

நாங்கள் ஒரு வரைபடத்தை உருவாக்கியுள்ளோம் | _+_ | மற்றும் அதில் முக்கிய மதிப்பு ஜோடிகளைச் செருகினார்.



<க்கான>
#சேர்க்கிறது
#சேர்க்கிறது
#சேர்க்கிறது
#சேர்க்கிறது
#சேர்க்கிறது
பயன்படுத்தி பெயர்வெளிமணி;
intமுக்கிய() {
// ஒரு வரைபடத்தைத் தொடங்குங்கள்
வரைபடம்>'இந்தியா','டெல்லி'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('நேபாளம்','காத்மாண்டு'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('சீனா','பெய்ஜிங்'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('பிரான்ஸ்','பாரிஸ்'));

// சுழற்சியில் இட்ரேட்டரைப் பயன்படுத்தி மீண்டும் செய்யவும்
க்கான (ஆட்டோitr=நாட்டின் மூலதன வரைபடம்.தொடங்க();itr!=நாட்டின் மூலதன வரைபடம்.முடிவு();itr++)
{
மணி::செலவு <<itr->முதலில்// அணுகல் விசை
<< ':'
<<itr->இரண்டாவது// அணுகல் மதிப்பு
<<மணி::endl;
}
திரும்ப 0;
}
</க்கான>
வெளியீடு:
<க்கான>
சீனா:பெய்ஜிங்
பிரான்ஸ்:பாரிஸ்
இந்தியா:டெல்லி
நேபாளம்:காத்மாண்டு
</க்கான>

நீங்கள் பார்க்கிறபடி, எங்களிடம் அச்சிடப்பட்ட நாடு: மூலதனம் (விசை: மதிப்பு) வளையத்திற்காகப் பயன்படுத்தப்படுகிறது.





நீங்கள் கவனித்தால், நாங்கள் பயன்படுத்தியிருக்கிறோம் | _+_ | வரைபட மறுசீரமைப்பிற்கான தட்டச்சு விவரக்குறிப்பு, ஏனெனில் படிக்கக்கூடியது. நீங்கள் பயன்படுத்த முடியும் | _+_ | வெளிப்படையாகவும்.
குறிப்பு: நீங்கள் வெளியீட்டைப் பார்த்தால், அது விசைகள் மூலம் ஏறுவரிசையில் வரிசைப்படுத்தப்படும். ஏனென்றால் std :: வரைபடம் என்பது ஒரு ஒப்பீடு செய்யப்பட்ட கொள்கலன் ஆகும். நாங்கள் எந்த ஒப்பீட்டாளரையும் வழங்காததால், C ++ சரத்திற்கு இயல்புநிலை ஒப்பீட்டாளரைப் பயன்படுத்தியுள்ளது.

Stp :: வரைபடத்துடன் போது வளையத்தைப் பயன்படுத்துதல்

லூப்புக்கு பதிலாக நாம் சிறிது நேர வளையத்தையும் பயன்படுத்தலாம்.



<க்கான>
#சேர்க்கிறது
#சேர்க்கிறது
#சேர்க்கிறது
#அடங்கும்>
பயன்படுத்தி பெயர்வெளிமணி;
intமுக்கிய() {
// ஒரு வரைபடத்தைத் தொடங்குங்கள்
வரைபடம்<சரம், சரம்>நாட்டின் மூலதன வரைபடம்;
// வரைபடத்தில் பல்வேறு கூறுகளைச் செருகவும்
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('இந்தியா','டெல்லி'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('நேபாளம்','காத்மாண்டு'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('சீனா','பெய்ஜிங்'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('பிரான்ஸ்','பாரிஸ்'));


// வரைபடத்திற்கு ஒரு ஐடரேட்டரை உருவாக்கி தொடக்கத்துடன் தொடங்கவும்
ஆட்டோitr=நாட்டின் மூலதன வரைபடம்.தொடங்க();
// சுழற்சியின் போது இட்ரேட்டரைப் பயன்படுத்தி மீண்டும் செய்யவும்
போது (itr!=நாட்டின் மூலதன வரைபடம்.முடிவு())
{
மணி::செலவு <<itr->முதலில்// அணுகல் விசை
<< ':'
<<itr->இரண்டாவது// அணுகல் மதிப்பு
<<மணி::endl;
itr++;
}
திரும்ப 0;
}
</க்கான>
வெளியீடு:
<க்கான>
சீனா:பெய்ஜிங்
பிரான்ஸ்:பாரிஸ்
இந்தியா:டெல்லி
நேபாளம்:காத்மாண்டு
</க்கான>

சுழற்சியை அடிப்படையாகக் கொண்ட வரம்பைப் பயன்படுத்துதல் (C ++ 11 பதிப்பு முதல்)

நீங்கள் சி ++ 11 பதிப்பைப் பயன்படுத்துகிறீர்கள் என்றால், சி ++ இல் வரைபடத்தை மீண்டும் செய்ய இது மிக நேர்த்தியான வழியாகும். நீங்கள் பாரம்பரிய க்யூபர்ஸம் சுழல்களைத் தவிர்த்து, அதற்குப் பதிலாக இதைப் பயன்படுத்தலாம்.

<க்கான>
#சேர்க்கிறது
#சேர்க்கிறது
#சேர்க்கிறது

பயன்படுத்தி பெயர்வெளிமணி;
intமுக்கிய() {
// ஒரு வரைபடத்தைத் தொடங்குங்கள்
வரைபடம்<சரம், சரம்>நாட்டின் மூலதன வரைபடம்;
// வரைபடத்தில் பல்வேறு கூறுகளைச் செருகவும்
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('இந்தியா','டெல்லி'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('நேபாளம்','காத்மாண்டு'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('சீனா','பெய்ஜிங்'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('பிரான்ஸ்','பாரிஸ்'));


// சுழற்சியில் இட்ரேட்டரைப் பயன்படுத்தி மீண்டும் செய்யவும்
க்கான (கான்ஸ்ட் ஆட்டோ &அவர்:நாட்டின் மூலதன வரைபடம்) {
செலவு <<அவர்.முதலில் << ':' <<அவர்.இரண்டாவது<<' n';
}

திரும்ப 0;
}
</க்கான>
வெளியீடு:
சீனா:பெய்ஜிங்
பிரான்ஸ்:பாரிஸ்
இந்தியா:டெல்லி
நேபாளம்:காத்மாண்டு

முக்கிய மதிப்புகள் ஜோடிகள் (C ++ 17 பதிப்பு)

இந்த பதிப்பு c ++ 17 இலிருந்து ஆதரிக்கப்படுகிறது மற்றும் வரைபடத்தில் மறுதொடக்கம் செய்ய மிகவும் நெகிழ்வான வழியை வழங்குகிறது. வரைபடத்தில் முக்கிய மதிப்புகள் ஜோடியை நீங்கள் வெளிப்படையாக அணுகலாம், இது இன்னும் படிக்கக்கூடிய தீர்வை வழங்குகிறது.

<க்கான>
#சேர்க்கிறது
#சேர்க்கிறது
#சேர்க்கிறது

பயன்படுத்தி பெயர்வெளிமணி;
intமுக்கிய() {
// ஒரு வரைபடத்தைத் தொடங்குங்கள்
வரைபடம்<சரம், சரம்>நாட்டின் மூலதன வரைபடம்;
// வரைபடத்தில் பல்வேறு கூறுகளைச் செருகவும்
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('இந்தியா','டெல்லி'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('நேபாளம்','காத்மாண்டு'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('சீனா','பெய்ஜிங்'));
நாட்டின் மூலதன வரைபடம்.செருக(ஜோடி<சரம், சரம்>('பிரான்ஸ்','பாரிஸ்'));


// சுழற்சியில் இட்ரேட்டரைப் பயன்படுத்தி மீண்டும் செய்யவும்
க்கான (கான்ஸ்ட் ஆட்டோ& [முக்கிய, மதிப்பு] :நாட்டின் மூலதன வரைபடம்) {
செலவு <<சாவி<< ':' <<மதிப்பு<< ' n';
}

திரும்ப 0;
}
</க்கான>
வெளியீடு:
சீனா:பெய்ஜிங்
பிரான்ஸ்:பாரிஸ்
இந்தியா:டெல்லி
நேபாளம்:காத்மாண்டு

சி ++ இல் வரைபடத்தை எவ்வாறு மீண்டும் செய்வது என்பது பற்றியது. மகிழ்ச்சியான குறியீட்டு முறை!