Qt tidak menggunakan pustaka C ++ standar , tetapi memiliki QString, QVector, QMap, ...
Ini berarti Anda harus membuat keputusan desain yang penting: bagian mana dari aplikasi yang akan menggunakan QString dan bagian mana yang akan menggunakan std :: string?
Menggunakan std :: string di beberapa bagian dan QString di bagian lain, berarti Anda harus mengonversi antara QString dan std :: string pada batas.
Untuk menghindari overhead itu, orang dapat memutuskan untuk menggunakan QString di seluruh aplikasi Anda. Tapi itu membuatnya lebih sulit untuk menggunakan perpustakaan pihak ke-3 yang tidak didasarkan pada Qt, misalnya meningkatkan.
(Perhatikan bahwa hal yang sama berlaku untuk std :: map vs QMap, std :: vector vs QVector, dan sebagainya)
Memutuskan bagian mana yang menggunakan tipe Qt dan bagian mana yang menggunakan STL adalah keputusan desain utama, dengan implikasi besar. Dan hanya karena Qt menolak untuk menggunakan perpustakaan C ++ standar.
IMHO, keputusan itu bisa berjalan baik, tergantung pada proyeknya. Jadi saya tidak bisa menjawab pertanyaan Anda mana yang harus dihindari.