我想使用std::min()
,但它显示了一个错误。我包括了图书馆:
for(size_t i = 0; i < 8; ++i) {
result[i] = std::min({sonarRange[i], sonarRange2[i], sonarRange3[i]});
}
您正试图将std::initializer_list
传递给std::min()
,但根据VS 2015 RTM中的C++11/14/17功能,我认为Visual Studio 2015还不支持使用std::min()
。您也可以将这3个值放入int[3]
数组中,并使用std::min_element()
查找最小值:
for(size_t i = 0; i < 8; ++i) {
int ranges[] = {sonarRange[i], sonarRange2[i], sonarRange3[i]};
result[i] = *std::min_element(std::begin(ranges), std::end(ranges));
}