Разница между delete и deleteLater
delete удалит объект на месте, в то время как deleteLater поместит его в очередь для удаления и когда управление вернется в цикл обработки событий - удалит.
То есть deleteLater - это безопасный способ очистить память, т.к. позволяет дождаться завершения всех операций с текущим объектом
Правильно ли я понял? И если да, то зачем тогда использовать менее безопасный delete?