这是我的数组
std::array<double, 64> fm_sim;
我想找到数组中的最大值
我不能用
double maxFmSim = std::max(fm_sim.begin(), fm_sim.end());
期望一个标识符现在这就是我要做的
double maxFmSim = fm_sim[0];
for (int i = 0; i < 64; i++)
{
if(fm_sim[i] > maxFmSim)
{
maxFmSim = fm_sim[i];
}
}
是否有更快的方法/其他std/stl函数,我可以使用它来找到最大值?
函数std::max
返回两个值之间较大的值。对于容器,您可以使用std::max_element
。由于这将返回一个指向max元素的迭代器,因此需要对其解引用。
double maxFmSim = *std::max_element(fm_sim.begin(), fm_sim.end());