Проблема собственно в самом Qt. В том, что по умолчанию он для const char* строк использует кодировку latin1, в которой нет набора русских символов.
Хороший пример. Могу дополнить примером с PythonQt, в котором для поддержки русского нужно в двух местах заменить toLatin1 на toAscii (
http://www.prog.org.ru/topic_17773_0.html). А сколько в сети программ, в которых поддерживается пара десятков языков за исключением русского? Это приносит свои плоды, уже находятся люди, которые заявляют, что программист, не знающий американского, не нужен... Может, поэтому в сети все чаще встречаются люди, которые плохо знают русский? Грустно, коллеги...