std::distance работает неправильно для неупорядоченной карты

Что случилось с std::distacneв этом фрагменте кода ?

Насколько я знаю, для std::mapили же std::vector, можно вызывать . Но для этого фрагмента кода программа сломается, если std::distanceназывается.

      // constructing unordered_multisets
#include <iostream>
#include <string>
#include <unordered_set>

int main ()
{
std::unordered_multiset<std::string> sixth ( {"red","green","blue"} ); // range


auto itr = sixth.begin();
itr++;


int dis = std::distance(itr, sixth.begin()); //What's wrong?!
std::cout << ">>"<< dis << std::endl;

std::cout << "game over" << std::endl;

return 0;

0 ответов

Другие вопросы по тегам