Well, in Component Object Model (COM) delete this
construction can be a part of Release
method that is called whenever you want to release aquisited object:
void IMyInterface::Release()
{
--instanceCount;
if(instanceCount == 0)
delete this;
}