#include <iostream>
#include <memory>
#include <string>
#include <vector>
using namespace std;
struct A {
std::string Name;
~A() {
std::cout << "Wut" << std::endl;
}
};
int main() {
std::vector<std::unique_ptr<A>> vector_of_as;
{
std::unique_ptr<A> new_a(new A());
vector_of_as.push_back(std::move(new_a));
}
vector_of_as.back()->Name="Should Work";
std::cout << "Name: " << vector_of_as.back()->Name << std::endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgojaW5jbHVkZSA8bWVtb3J5PgojaW5jbHVkZSA8c3RyaW5nPgojaW5jbHVkZSA8dmVjdG9yPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IEEgewogICAgc3RkOjpzdHJpbmcgTmFtZTsKICAgIAogICAgfkEoKSB7CiAgICAgICAgc3RkOjpjb3V0IDw8ICJXdXQiIDw8IHN0ZDo6ZW5kbDsKICAgIH0KICAgIAp9OwoKaW50IG1haW4oKSB7CgogICAgc3RkOjp2ZWN0b3I8c3RkOjp1bmlxdWVfcHRyPEE+PiB2ZWN0b3Jfb2ZfYXM7CiAgICB7CiAgICAgICAgc3RkOjp1bmlxdWVfcHRyPEE+IG5ld19hKG5ldyBBKCkpOwogICAgICAgIHZlY3Rvcl9vZl9hcy5wdXNoX2JhY2soc3RkOjptb3ZlKG5ld19hKSk7CiAgICB9CiAgICB2ZWN0b3Jfb2ZfYXMuYmFjaygpLT5OYW1lPSJTaG91bGQgV29yayI7CiAgICBzdGQ6OmNvdXQgPDwgIk5hbWU6ICIgPDwgIHZlY3Rvcl9vZl9hcy5iYWNrKCktPk5hbWUgPDwgc3RkOjplbmRsOwoKICAgIHJldHVybiAwOwoKfQ==