Имеет смысл реализовать < для QString как:
std::ostream& operator <<(std::ostream &stream,const QString &str)
{
stream << str.toAscii().constData(); //or: stream << str.toStdString(); //??
return stream;
}
вместо записи
stream << str.toAscii().constData();
каждый раз в коде.
Однако, поскольку он не находится в стандартной библиотеке Qt, я предполагаю, что есть какая-то особая причина не делать этого. Каковы риски/неудобства перегрузки < < как указано выше?