নিম্নলিখিত কোডে আমি একটি মানচিত্রের মধ্য দিয়ে লুপ করছি এবং কোনও উপাদান মোছার দরকার আছে কিনা তা পরীক্ষা করে দেখি। উপাদানটি মুছে ফেলা এবং পুনরাবৃত্তি করা কি নিরাপদ বা আমার অন্য পাত্রে কীগুলি সংগ্রহ করতে এবং মুছে ফেলার জন্য দ্বিতীয় লুপটি করতে হবে ()?
map<string, SerialdMsg::SerialFunction_t>::iterator pm_it;
for (pm_it = port_map.begin(); pm_it != port_map.end(); pm_it++)
{
if (pm_it->second == delete_this_id) {
port_map.erase(pm_it->first);
}
}
আপডেট: অবশ্যই, আমি তখন এই প্রশ্নটি পড়েছিলাম যা আমি মনে করি না যে এটি সম্পর্কিত হতে পারে তবে আমার প্রশ্নের উত্তর দেয়।
std::remove_if
করে সেই প্রশ্নে নোট করুনstd:map