কিভাবে C ++ এ মানচিত্রে পুনরাবৃত্তি করবেন

How Iterate Over Map C



এই দ্রুত টিউটোরিয়ালে, আমরা দেখব কিভাবে C ++ এ মানচিত্রে পুনরাবৃত্তি করতে হয়।

C ++ এ মানচিত্রে পুনরাবৃত্তি করার একাধিক উপায় রয়েছে। C ++ এর নতুন সংস্করণের সাথে, C ++ এ মানচিত্রে পুনরাবৃত্তি করার আরও উন্নত উপায় রয়েছে।







আসুন একে একে একে একে যাই।



Stp :: map দিয়ে লুপ ব্যবহার করা

আমরা | _+_ | নামে একটি মানচিত্র তৈরি করেছি এবং এতে কী-ভ্যালু জোড়া োকানো হয়েছে।



<জন্য>
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত
ব্যবহার নামস্থানঘন্টার;
intপ্রধান() {
// একটি মানচিত্র শুরু করুন
মানচিত্র>'ভারত','দিল্লি'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('নেপাল','কাঠমান্ডু'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('চীন','বেইজিং'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('ফ্রান্স','প্যারিস'));

// লুপের জন্য ইটারেটর ব্যবহার করে পুনরাবৃত্তি করুন
জন্য (স্বয়ংক্রিয়এটিআর=countryCapitalMap।শুরু();এটিআর!=countryCapitalMap।শেষ();এটিআর++)
{
ঘন্টার::খরচ <<এটিআর->প্রথম// অ্যাক্সেস কী
<< ':'
<<এটিআর->দ্বিতীয়// অ্যাক্সেস মান
<<ঘন্টার::endl;
}
প্রত্যাবর্তন 0;
}
</জন্য>
আউটপুট:
<জন্য>
চীন:বেইজিং
ফ্রান্স:প্যারিস
ভারত:দিল্লি
নেপাল:কাঠমান্ডু
</জন্য>

আপনি দেখতে পাচ্ছেন, আমরা মুদ্রিত দেশ: মূলধন (কী: মান) লুপ ব্যবহার করে।





যদি আপনি লক্ষ্য করেন, আমরা | _+_ | ব্যবহার করেছি পঠনযোগ্যতার কারণে ম্যাপ ইটারেটরের জন্য টাইপ স্পেসিফায়ার। আপনি | _+_ | ব্যবহার করতে পারেন স্পষ্টভাবে পাশাপাশি।
বিঃদ্রঃ: যদি আপনি আউটপুটটি দেখতে পান, এটি কী দ্বারা আরোহী ক্রমে সাজানো হয়। এর কারণ হল std :: map সরবরাহকৃত তুলনাকারী (সংস্করণ C ++ 11 পরবর্তী) সহ একটি সাজানো সহযোগী ধারক। যেহেতু আমরা কোন তুলনাকারী প্রদান করিনি, তাই C ++ স্ট্রিং এর জন্য ডিফল্ট তুলনাকারী ব্যবহার করেছে।

Stp :: map দিয়ে while লুপ ব্যবহার করা

আমরা লুপের পরিবর্তে একটু লুপ ব্যবহার করতে পারি।



<জন্য>
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত>
ব্যবহার নামস্থানঘন্টার;
intপ্রধান() {
// একটি মানচিত্র শুরু করুন
মানচিত্র<স্ট্রিং, স্ট্রিং>countryCapitalMap;
// মানচিত্রে বিভিন্ন উপাদান সন্নিবেশ করান
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('ভারত','দিল্লি'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('নেপাল','কাঠমান্ডু'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('চীন','বেইজিং'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('ফ্রান্স','প্যারিস'));


// মানচিত্রের জন্য একটি ইটারেটর তৈরি করুন এবং শুরু দিয়ে শুরু করুন
স্বয়ংক্রিয়এটিআর=countryCapitalMap।শুরু();
// যখন লুপে iterator ব্যবহার করে পুনরাবৃত্তি
যখন (এটিআর!=countryCapitalMap।শেষ())
{
ঘন্টার::খরচ <<এটিআর->প্রথম// অ্যাক্সেস কী
<< ':'
<<এটিআর->দ্বিতীয়// অ্যাক্সেস মান
<<ঘন্টার::endl;
এটিআর++;
}
প্রত্যাবর্তন 0;
}
</জন্য>
আউটপুট:
<জন্য>
চীন:বেইজিং
ফ্রান্স:প্যারিস
ভারত:দিল্লি
নেপাল:কাঠমান্ডু
</জন্য>

লুপের জন্য পরিসীমা ব্যবহার করা (C ++ 11 সংস্করণ পরবর্তী)

আপনি যদি C ++ 11 সংস্করণ ব্যবহার করেন, তাহলে C ++ এ মানচিত্রে পুনরাবৃত্তি করার এটি সবচেয়ে মার্জিত উপায়। আপনি traditionalতিহ্যগত কিউবারসুম লুপগুলি এড়াতে পারেন এবং এর পরিবর্তে এটি ব্যবহার করতে পারেন।

<জন্য>
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত

ব্যবহার নামস্থানঘন্টার;
intপ্রধান() {
// একটি মানচিত্র শুরু করুন
মানচিত্র<স্ট্রিং, স্ট্রিং>countryCapitalMap;
// মানচিত্রে বিভিন্ন উপাদান সন্নিবেশ করান
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('ভারত','দিল্লি'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('নেপাল','কাঠমান্ডু'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('চীন','বেইজিং'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('ফ্রান্স','প্যারিস'));


// লুপের জন্য ইটারেটর ব্যবহার করে পুনরাবৃত্তি করুন
জন্য (const স্বয়ংক্রিয় &তিনি:countryCapitalMap) {
খরচ <<তিনিপ্রথম << ':' <<তিনিদ্বিতীয়<<'n';
}

প্রত্যাবর্তন 0;
}
</জন্য>
আউটপুট:
চীন:বেইজিং
ফ্রান্স:প্যারিস
ভারত:দিল্লি
নেপাল:কাঠমান্ডু

কী-মান জোড়াগুলির সাথে লুপের জন্য পরিসীমা-ভিত্তিক ব্যবহার করা (C ++ 17 সংস্করণ পরবর্তী)

এই সংস্করণটি সি ++ 17 থেকে সমর্থিত এবং মানচিত্রে পুনরাবৃত্তির জন্য আরও নমনীয় উপায় সরবরাহ করে। আপনি মানচিত্রে কী-মান জোড়া স্পষ্টভাবে অ্যাক্সেস করতে পারেন যা আরও বেশি পাঠযোগ্য সমাধান প্রদান করে।

<জন্য>
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত
#অন্তর্ভুক্ত

ব্যবহার নামস্থানঘন্টার;
intপ্রধান() {
// একটি মানচিত্র শুরু করুন
মানচিত্র<স্ট্রিং, স্ট্রিং>countryCapitalMap;
// মানচিত্রে বিভিন্ন উপাদান সন্নিবেশ করান
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('ভারত','দিল্লি'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('নেপাল','কাঠমান্ডু'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('চীন','বেইজিং'));
countryCapitalMap।সন্নিবেশ করান(জোড়া<স্ট্রিং, স্ট্রিং>('ফ্রান্স','প্যারিস'));


// লুপের জন্য ইটারেটর ব্যবহার করে পুনরাবৃত্তি করুন
জন্য (const স্বয়ংক্রিয়& [প্রকৃত মূল্য] :countryCapitalMap) {
খরচ <<চাবি<< ':' <<মান<< 'n';
}

প্রত্যাবর্তন 0;
}
</জন্য>
আউটপুট:
চীন:বেইজিং
ফ্রান্স:প্যারিস
ভারত:দিল্লি
নেপাল:কাঠমান্ডু

সি ++ এ মানচিত্রে কীভাবে পুনরাবৃত্তি করা যায় সে সম্পর্কে এটিই। শুভ কোডিং!