无法将向量中的答案返回到整数

时间:2017-08-29 21:54:00

标签: c++

    int max=0;int answer=0;
    max = max_element(ar.begin(),ar.end());
    answer = find(ar.begin(), ar.end(), max);
    return answer; 

所以我需要的是查看一个向量并选出它的最大值并返回向量中有多少最大值。我以前试过使用这些功能,似乎应该可以工作,但它没有。

错误: 无法在作业中将'__gnu_cxx :: __ normal_iterator>'转换为'int'

1 个答案:

答案 0 :(得分:2)

end返回一个与所提供的auto find_result = find(ar.begin(), ar.end(), max); answer = distance(ar.begin(), find_result); 和{{1}}迭代器匹配的迭代器类型,而不是索引,这正是您所期望的。您可以通过执行以下操作获得所需的索引:

{{1}}