the memory was created with `malloc`, therefore we need free to delete them.
I change it to `new` allocation and than we can use `__delete()`