Cześć. Miałem za zadanie napisać program, o poniższej treści:
Napisałem taki kod. Niestety wyskakuje mi błąd: could not convert 'minimum' from 'normal_iterator<const int*,[...]> to normal_iterator<int*,[...]>
#include <vector>
#include <iostream>
std::vector<int>::iterator min_element(std::vector<int>::const_iterator b, std::vector<int>::const_iterator e){
auto minimum = b;
for(auto iterator = b; ++iterator<e;)
if(*iterator < *minimum){
minimum = iterator;
}
return minimum;
}
int main()
{
std::vector<int> vector {7,5,1,12,8};
auto result1 = min_element(vector.begin(),vector.end());
auto result2 = min_element(vector.cbegin(),vector.cend());
std::cout<<result1-vector.begin()<<" "<<result2 - vector.cbegin()<<std::endl;
}
Byłbym bardzo wdzięczny za pomoc.