@Gacha

I am not sure where you see the problems.

The connections between signal and slots are removed with destruction of either object

There is an issue when you are deleting an object when you are deleting it from the slot routine which is called an object's signal. I can imagine that there you may face a problem when using unique_ptr. To avoid this there is deleteLater()