Я знаю, с помощью transform
я могу добавить константу к некоторому вектору, например, так:
std::vector<int> a(3, 2);
std::transform( a.begin(), a.end(), a.begin(), std::bind2nd( std::plus<double>(), 1 ) );
Мне было интересно, как я могу изменить transform
, чтобы добавить константу к некоторому срезу [index:end]
извектор, например, последние два элемента.
Я могу сделать это с помощью цикла, например:
for (int i=1; i < a.size(); i++) {
a.at(i) += 1;
}
, но, возможно, есть лучший вариант