oguzhane adlı üyeden alıntı: mesajı görüntüle
Yukarı da ki durumda destructoru çağırmanın bir faydası yok ekstra işlem yaptırmış oluyorsunuz boşuna free kullanmak daha mantıklı, hepsinin kullanım yeri farklıdır hangisi duruma uyuyorsa onu kullanırsınız, class destroy edildiğinde bir işlem yapılacaksa delete kullanmak en mantıklısı bu durumda öyle birşey yok.
Yukarıdaki durumu sadece free ve delete 'in aynı işi yapmadığını göstermek için yazdım.

"ekstra işlem yaptırmış oluyorsunuz boşuna free kullanmak daha mantıklı,". Tamamıyla yanlış bir ifade. free ve delete birbirlerinin alternatifleri değildir ve internal yapıları birbirinden farklıdır. malloc ile allocate ettiğiniz memory'i free ile, new ile allocate ettiğiniz memory'i delete ile deallocate etmeniz gerekiyor.

"The free function causes the space pointed to by ptr to be deallocated, that is, made available for further allocation. If ptr is a null pointer, no action occurs. Otherwise, if the argument does not match a pointer earlier returned by the calloc, malloc, or realloc function, or if the space has been deallocated by a call to free or realloc, the behavior is undefined.."
-C99 Standard Chapter 7.20.3.2

New ile ayrılmış bir dinamik memoryi free fonksiyonu ile deallocate etmek sonucu belirsiz bir durumdur, sizin compilerınızın ya da benim kullandığım compilerın bu durumda beklendiği gibi çalışması bu gerçeği değiştirmez.

Hiçbir zaman malloc/delete ya da new/free şeklinde, bu operatorleri ve fonksiyonları karıştırıp kullanmamalısınız.

Ekleme:

https://isocpp.org/wiki/faq/freestor...loc-and-delete ( isocpp C++ resmi sitesi )

Alıntı
No! In brief, conceptually malloc and new allocate from different heaps, so can’t free or delete each other’s memory. They also operate at different levels – raw memory vs. constructed objects.
Dediğim gibi birbirlerinin alternatifleri değiller, yapıları farklı.

Alıntı
Furthermore, there is no guarantee that the mechanism used by new and delete to acquire and release raw memory is compatible with malloc() and free(). If mixing styles works on your system, you were simply “lucky” – for now.
Derleyicimizin bu karışık kullanımlarda istediğimiz gibi çalışması garanti edilen bir durum değil, o anlık şanslı olduğumuzun göstergesi.