This looks dangerous.  Casting to void* will cause delete NOT to call the object's destructor (and deleting void* with vector deletion doesn't really make much sense anyway).