У меня для цикла, как показано ниже:
for (multimap<string,string>::iterator it2 = ppp.first;it2 != ppp.second; ++it2)
{
if(it2==ppp.second -1)
str=str+it2->second.substr(0,(it2->second).find('-'));
else
str=str+it2->second.substr(0,(it2->second).find('-'))+'&';
}
Я использую условие, как показано ниже:
if(it2==ppp.second -1)
для проверки последнего элемента и выполнения некоторых дополнительных функций, если я нашелпоследний элемент. Но вышеприведенное условие не работает.это выдает мне ошибку:
"000001.cc", line 50: Error: The operation "__rwstd::__rb_tree<std::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::pair<const std::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::basic_string<char, std::char_traits<char>, std::allocator<char>>>, __rwstd::__select1st<std::pair<const std::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::less<std::basic_string<char, std::char_traits<char>, std::allocator<char>>>, std::allocator<std::pair<const std::basic_string<char, std::char_traits<char>, std::allocator<char>>, std::basic_string<char, std::char_traits<char>, std::allocator<char>>>>>::iterator - int" is illegal.
1 Error(s) detected.
Может кто-нибудь, пожалуйста, помогите.