If there are pointer-cycles in the data-structures you have to be *very* careful or nothing can be freed in c++. I'm a fan of c++ and think it's the best of the bunch of similar languages like java or go, but to say it's easy to write without delete and gc is unrealistic. This considered I'm rather careful and have a deterministic behavior than rely on a kind of magic behind the scene. E.g. managing resources with RAII is pleasant.