Wir sehen hier ja nicht, was in deinem Konstruktor abgeht. Die ganze Sache hört sich doch eigentlich so an, als könnte man super ein nachstellbares Minimalbeispiel machen?
delete an sich wirft keine
Exception, es sei denn, der Destruktor des Objekts wirft eine. Ich kenne mich mit Qt nicht aus, aber QChar scheint gar keinen zu haben. Damit hätte ich mir erklärt dass dein try..catch nicht greift, wenn das Ding halt dann was wirft, was sich nicht von std::
exception ableitet.
Zieh das doch mal einer
DLL raus, als standalone Anwendung und schau dir die Sache im Debugger an, dann muss man kein printf-Debuggung machen.