#include <iostream>
#include <string>
#include <vector>
#include <utility>
using namespace std;
struct ObjectName
{
string name;
};
int main()
{
ObjectName* m_objects0 = new ObjectName[10];
ObjectName* m_objects1 = new ObjectName[10];
for(int i = 0; i < 10; ++i)
{
m_objects0[i].name = "object A" + to_string(i+1);
m_objects1[i].name = "object B" + to_string(i+1);
}
ObjectName* m_objects0_end = m_objects0 + 10;
ObjectName* m_objects1_end = m_objects1 + 10;
vector<pair<ObjectName*, ObjectName*>> object_ptrs;
object_ptrs.emplace_back(m_objects0, m_objects0_end);
object_ptrs.emplace_back(m_objects1, m_objects1_end);
for(auto &p : object_ptrs)
{
ObjectName* m_pObject = p.first;
ObjectName* m_pObjects_end = p.second;
while (m_pObject != m_pObjects_end)
{
cout << m_pObject->name << endl;
++m_pObject;
}
}
delete[] m_objects0;
delete[] m_objects1;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8dmVjdG9yPgojaW5jbHVkZSA8dXRpbGl0eT4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnN0cnVjdCBPYmplY3ROYW1lCnsKCXN0cmluZyBuYW1lOwp9OwoKaW50IG1haW4oKQp7CglPYmplY3ROYW1lKiBtX29iamVjdHMwID0gbmV3IE9iamVjdE5hbWVbMTBdOwoJT2JqZWN0TmFtZSogbV9vYmplY3RzMSA9IG5ldyBPYmplY3ROYW1lWzEwXTsKCglmb3IoaW50IGkgPSAwOyBpIDwgMTA7ICsraSkKCXsKCQltX29iamVjdHMwW2ldLm5hbWUgPSAib2JqZWN0IEEiICsgdG9fc3RyaW5nKGkrMSk7CgkJbV9vYmplY3RzMVtpXS5uYW1lID0gIm9iamVjdCBCIiArIHRvX3N0cmluZyhpKzEpOwoJfQoJCglPYmplY3ROYW1lKiBtX29iamVjdHMwX2VuZCA9IG1fb2JqZWN0czAgKyAxMDsKCU9iamVjdE5hbWUqIG1fb2JqZWN0czFfZW5kID0gbV9vYmplY3RzMSArIDEwOwoKCXZlY3RvcjxwYWlyPE9iamVjdE5hbWUqLCBPYmplY3ROYW1lKj4+IG9iamVjdF9wdHJzOwoJb2JqZWN0X3B0cnMuZW1wbGFjZV9iYWNrKG1fb2JqZWN0czAsIG1fb2JqZWN0czBfZW5kKTsKCW9iamVjdF9wdHJzLmVtcGxhY2VfYmFjayhtX29iamVjdHMxLCBtX29iamVjdHMxX2VuZCk7CgoJZm9yKGF1dG8gJnAgOiBvYmplY3RfcHRycykKCXsKCQlPYmplY3ROYW1lKiBtX3BPYmplY3QgPSBwLmZpcnN0OwoJCU9iamVjdE5hbWUqIG1fcE9iamVjdHNfZW5kID0gcC5zZWNvbmQ7CgoJCXdoaWxlIChtX3BPYmplY3QgIT0gbV9wT2JqZWN0c19lbmQpCgkJewoJICAgIAljb3V0IDw8IG1fcE9iamVjdC0+bmFtZSA8PCBlbmRsOwogICAgCQkrK21fcE9iamVjdDsKCQl9Cgl9CgoJZGVsZXRlW10gbV9vYmplY3RzMDsKCWRlbGV0ZVtdIG1fb2JqZWN0czE7Cn0=