The worst thing about C++ for UI work is that it offers essentially no introspection and is a nightmare for tools authors. It's good for writing high-performance application kernels but for everyday UI building it's just overly complex and awkward.
Also agree that QML is light years ahead of anything else for UI work. Declarative is the way to go, but most are focusing in the wrong direction (e.g storyboards).
Any programming language will be awful for UIs, be it C++, Obj-C, Python or C#.
Qt for example uses hybrid approach. UI itself is not defined it C++, rather in declarative language (QML). C++ is used for application logic. That wasn't so in Qt from the start, but was brought there because of dynamic UI requirements, especially on mobile.