Мой тестовый код, как показано ниже; Суть логики заключается в том, что я неоднократно вызываю лямбда -чек , чтобы вернуть следующее самое низкое значение из случайно инициированного вектора целых чисел; Подпись проверки ожидает значения ссылки типа Const на итератор на вектор ints . Inside Check , ITER_NXT_LOW установлен на точку, изначально на аргумент CONST . Ожидается, что когда проверка заканчивает выполнение каждый раз, ITER_NXT_LOW будет содержать новое минимум, либо то же значение, что и значение, полученное путем размерности CONST REEGHTER .
Однако, несмотря на использование концентрации , что, по -видимому, проверка , кажется, всегда будет возвращать ITER void
{
constexpr unsigned MAXSZ = 10;
constexpr int MINRNG = -25;
constexpr int MAXRNG = 25;
random_device rd;
mt19937 gen(rd());
uniform_int_distributiondistr(MINRNG,MAXRNG);
for(size_t i = 0; i < MAXSZ; ++i)
{
vI.push_back(distr(gen));
}
return;
};
auto printVec = [&]()->void
{
for(auto i : vI)
{
cout
Подробнее здесь: https://stackoverflow.com/questions/797 ... r-iterator