Consider this simple program:
vector foo = {0, 42, 0, 42, 0, 42}; replace(begin(foo), end(foo), foo.front(), 13); for(const auto& i : foo) co
To be more explicit you can use int() as a constructor to create a temporary:
int()
replace(begin(foo), end(foo), int(foo.front()), 13);
Instead of adding a value. See Demo.