class Foo
{
public:
std::string name;
int index;
Foo():name("Default"),index(-1)
{
std::cout<<"Foo "<<name<<" created\n";
}
~Foo()
{
std::cout<<"Destructor of Foo "<<name<<" of index "<<index<<std::endl;
}
};
std::vector<Foo> foos;
void AddFoo()
{
std::cout<<"AddFoo called\n";
Foo tempfoo;
foos.push_back(tempfoo);
foos.back().name="Bob";
foos.back().index=foos.size()-1;
}
int main(int,char**)
{
AddFoo();
AddFoo();
std::cout<<"End of program\n";
}