class Auto
{
std::vector<id> ids;
public:
Auto()
{
}
~Auto()
{
for(typeof(ids.begin()) it = ids.begin(); it != ids.end(); it++)
{
[((id)*it) release];
}
}
template<typename T>
T operator()(T obj)
{
ids.push_back(obj);
return obj;
}
};