Ошибка: ‘класс std::map "не имеет члена с именем" first’
Учитывая массив , нам нужно вывести частоту всех элементов массива.
arr[]= {1,5,1,2,5,2,g}
Выход : 1 2
2 2
5 3
Что я уже пробовал:
Я попробовал это сделать с помощью unordered_map следующим образом-
void count(int arr[] , int n){ map<int ,int>d; for(int i=0;i<n ;i++){ d[arr[i]]++; } for(auto i : d){ cout<<d.first<<" "<<d.second<<"\n"; } }
В основном я использовал map для хранения частот элементов массива и попробовал его на C++14 , но он дает следующую ошибку-
ошибка:‘class std::map’ не имеет члена с именем ‘first’
Я думаю, что карта имеет первый и второй встроенные в нее элементы, тогда почему она выдает ошибку??
Если есть какие-либо исправления в коде , пожалуйста, дайте мне знать.