#include <iostream>
#include <vector>
#include <boost/range/adaptor/indirected.hpp>
int main()
{
std::cout << std::boolalpha;
int t = 42;
std::vector<const int*> v(10, &t);
const auto cont = v | boost::adaptors::indirected;
for (auto& a : cont)
{
auto first = &a == &cont.front();
auto last = &a == &cont.back();
std::cout << first << ", " << last << std::endl;
}
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8Ym9vc3QvcmFuZ2UvYWRhcHRvci9pbmRpcmVjdGVkLmhwcD4KCmludCBtYWluKCkKewogICBzdGQ6OmNvdXQgPDwgc3RkOjpib29sYWxwaGE7CgogICBpbnQgdCA9IDQyOwogICBzdGQ6OnZlY3Rvcjxjb25zdCBpbnQqPiB2KDEwLCAmdCk7CgogICBjb25zdCBhdXRvIGNvbnQgPSB2IHwgYm9vc3Q6OmFkYXB0b3JzOjppbmRpcmVjdGVkOwoJCiAgIGZvciAoYXV0byYgYSA6IGNvbnQpCiAgIHsKICAgICAgYXV0byBmaXJzdCA9ICZhID09ICZjb250LmZyb250KCk7CiAgICAgIGF1dG8gbGFzdCA9ICZhID09ICZjb250LmJhY2soKTsKCiAgICAgIHN0ZDo6Y291dCA8PCBmaXJzdCA8PCAiLCAiIDw8IGxhc3QgPDwgc3RkOjplbmRsOwogICB9Cgp9Cg==
true, true
true, true
true, true
true, true
true, true
true, true
true, true
true, true
true, true
true, true