我正在尝试使用基于它的值来检索向量的索引std::upper_bound
。但是由于某种原因,以下代码集tmpKey
等于2
vs 我的预期值1
。有什么东西是非常错误的吗?
int main()
{
float time = 30.0000000;
std::vector<float> positionKeyTimes = { 0.000000000, 30.0000000 };
auto it = std::upper_bound(positionKeyTimes.begin(), positionKeyTimes.end(), time);
auto tmpKey = (size_t)(it - positionKeyTimes.begin());
std::cout << tmpKey << "\n";
std::cin.get();
}