Название: Segmentation fault при соединении сигнала со слотом
Отправлено: RedDog от Август 24, 2010, 09:15
Добрый день. Не пойму в чем может быть причина: class CSocketLogin : public QObject { Q_OBJECT public: CSocketLogin(); void sendData(QString &input); void connect(); private: QSslSocket *socket; QString m_answer; private slots: void socketStateChanged(QAbstractSocket::SocketState state); void socketEncrypted(); void sslErrors(const QList<QSslError> &errors); public slots: void socketReadyRead(); }; CSocketLogin::CSocketLogin() { if (!socket) socket = new QSslSocket(0); }
void CSocketLogin::connect() { QObject::connect(socket, SIGNAL(stateChanged(QAbstractSocket::SocketState)), this, SLOT(socketStateChanged(QAbstractSocket::SocketState))); QObject::connect(socket, SIGNAL(encrypted()), this, SLOT(socketEncrypted())); QObject::connect(socket, SIGNAL(sslErrors(QList<QSslError>)), this, SLOT(sslErrors(QList<QSslError>))); QObject::connect(socket, SIGNAL(readyRead()), this, SLOT(socketReadyRead())); socket->connectToHostEncrypted("login.live.com", 443); }
в при соединении сигнала со слотом вываливается SF Что не так?
Название: Re: Segmentation fault при соединении сигнала со слотом
Отправлено: RedDog от Август 24, 2010, 09:40
Ответ: здесь: CSocketLogin::CSocketLogin() { if (!socket) socket = new QSslSocket(0); } не срабатывало условие, посему объект не создавался
Название: Re: Segmentation fault при соединении сигнала со слотом
Отправлено: SASA от Август 24, 2010, 09:52
Пользуйтесь QPointer !!!
|