Дык `QUrl::toEncoded()` возвращает не строку, а уже закодированный
`QByteArray`. А если конвертировать туда-сюда в строки и делать опрометчиво
QUrl от строки, то можно поймать себя на том, что либо QUrl воспримет уже
закодированную строку как подлежащую повторной кодировке (и будет облом со
спецсимволами), либо обратное. В общем, можно и со строками, но нужна
лишняя осторожность, которой в случае QUrl API можно избежать.