#include <algorithm>
#include <iostream>
#include <vector>
using OBJ = int;
bool foo(const OBJ& a)
{ return a == 1; }
int main()
{
std::vector< OBJ > vec = {1, 2, 3, 4};
std::vector< bool > v;
v.reserve(vec.size());
std::for_each(vec.begin(), vec.end(), [&v](const OBJ& a)->void
{
v.insert(v.end(), foo(a) ); // bool return insert at back
});
for(auto const& it: v) std::cout << it << std::endl;
return 0;
}
I2luY2x1ZGUgPGFsZ29yaXRobT4KI2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgoKdXNpbmcgT0JKID0gaW50OwoKYm9vbCBmb28oY29uc3QgT0JKJiBhKQp7IHJldHVybiBhID09IDE7IH0KCmludCBtYWluKCkKewogICBzdGQ6OnZlY3RvcjwgT0JKID4gdmVjID0gezEsIDIsIDMsIDR9OwogICBzdGQ6OnZlY3RvcjwgYm9vbCA+IHY7CiAgIHYucmVzZXJ2ZSh2ZWMuc2l6ZSgpKTsKCiAgIHN0ZDo6Zm9yX2VhY2godmVjLmJlZ2luKCksIHZlYy5lbmQoKSwgWyZ2XShjb25zdCBPQkomIGEpLT52b2lkCiAgICAgIHsKICAgICAgICAgdi5pbnNlcnQodi5lbmQoKSwgZm9vKGEpICk7IC8vIGJvb2wgcmV0dXJuIGluc2VydCBhdCBiYWNrCiAgICAgIH0pOwoKICAgZm9yKGF1dG8gY29uc3QmIGl0OiB2KSBzdGQ6OmNvdXQgPDwgaXQgPDwgc3RkOjplbmRsOwoKICAgcmV0dXJuIDA7Cn0K