我正在尝试使用max函数创建一个.Count来获取float类型的最大值的次数。从MSDN我不知道如何制作它。 任何想法?
答案 0 :(得分:2)
那样的东西? (也许不是,很难理解这个问题)
int count(std::vector<float> &data) {
if ( data.empty() ) return -1;
float maxval = data[0];
int maxnum = 0;
for ( std::vector<float>::iterator it = data.begin()+1; it != data.end(); ++it ) {
if ( equal(*it, maxval) ) {
maxnum += 1;
} else if ( *it > maxval ) {
maxval = *it;
maxnum = 0;
}
}
return maxnum;
}
等于(a,b)检查是否| a - b | &lt; = epsilon