Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > С/С++: Кроссплатформенное программирование, Qt/Gtk+/wxWidgets > Инициализация QTextStream


Автор: errr 24.5.2010, 23:24
Надо организовать вывод в консоль.
Делаю примерно так:
srv.h
Е
Код

class MyServer : public QObject {
Q_OBJECT
public:
    QTextStream* cout;
}


srv.cpp
Е
Код

MyServer::MyServer(QObject* pwgt /*=0*/) :  QObject(pwgt)
{
    cout = new QTextStream (stdout, QIODevice::WriteOnly);
    cout << "!!!BEGIN!!!";
}


но не работает. где я напутал?

Автор: cutwater 25.5.2010, 00:09
Естественно не работает. У Вас cout имеет тип указателя, для которого естественно нет перегрузки оператора <<

Так что либо
Код

 (*cout) << "!!!BEGIN!!!";


либо

Код

class MyServer : public QObject {
Q_OBJECT
public:
    QTextStream cout;
}
//-----------------------------------------------------
MyServer::MyServer(QObject* pwgt /*=0*/) 
    :  QObject(pwgt),
       cout( stdout, QIODevice::WriteOnly )
{
    cout << "!!!BEGIN!!!";
}



как-то так.

Автор: djamshud 25.5.2010, 00:20
Более брутальный вариант:
Код

this->cout->operator<<("Begin");

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)