#include <iostream>
#include <vector>
class Foo {
const char* m_name;
public:
Foo(const char* name) : m_name(name) { std::cout << "Foo " << m_name << '\n'; }
~Foo() { std::cout << "~Foo " << m_name << '\n'; }
};
int main() {
std::vector<Foo*> foos;
Foo foo("foo");
foos.push_back(new Foo("new"));
return 0;
}
ICAgICNpbmNsdWRlIDxpb3N0cmVhbT4KICAgICNpbmNsdWRlIDx2ZWN0b3I+CgogICAgY2xhc3MgRm9vIHsKICAgICAgICBjb25zdCBjaGFyKiBtX25hbWU7CiAgICBwdWJsaWM6CiAgICAgICAgRm9vKGNvbnN0IGNoYXIqIG5hbWUpIDogbV9uYW1lKG5hbWUpIHsgc3RkOjpjb3V0IDw8ICJGb28gIiA8PCBtX25hbWUgPDwgJ1xuJzsgfQogICAgICAgIH5Gb28oKSB7IHN0ZDo6Y291dCA8PCAifkZvbyAiIDw8IG1fbmFtZSA8PCAnXG4nOyB9CiAgICB9OwoKICAgIGludCBtYWluKCkgewogICAgICAgIHN0ZDo6dmVjdG9yPEZvbyo+IGZvb3M7CiAgICAgICAgRm9vIGZvbygiZm9vIik7CiAgICAgICAgZm9vcy5wdXNoX2JhY2sobmV3IEZvbygibmV3IikpOwoKICAgICAgICByZXR1cm4gMDsKICAgIH0=