Bonsoir,
J'ai une série de test ICMP à faire sur plusieurs Ip, et je souhaite utiliser le pingpong de QWebSocket : http://doc.qt.io/qt-5/qwebsocket.html
SIGNAL :
void QWebSocket::pong(quint64 elapsedTime, const QByteArray &payload)
SLOT :
void QWebSocket::ping(const QByteArray &payload = QByteArray())
J'ai créé la classe 'classe.h' en guise de test en m'inspirant des exemples de la Doc :
Malheureusement je n'arrive pas à déclarer les deux fonctions membres ping et pong, la compilation me renvoie :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37 #ifndef CLASSE_H #define CLASSE_H #include <QtCore/QObject> #include <QtWebSockets/QWebSocket> QT_USE_NAMESPACE class classe : public QObject { Q_OBJECT public: classe(); // const QByteArray playload = "192.168.109.2"; Q_SIGNALS: void closed(); void QWebSocket::pong(quint64 elapsedTime, const QByteArray &payload); private Q_SLOTS: void QWebSocket::ping(const QByteArray &payload = QByteArray()); private: QWebSocket m_webSocket; QUrl m_url; bool m_debug; }; #endif // CLASSE_H
Je travail avec Qt 5.6.2,/home/developer/icmp_ping/classe.h:24: erreur : cannot declare member function 'QWebSocket::pong' within 'classe' void QWebSocket::pong(quint64 elapsedTime, const QByteArray &payload);
/home/developer/icmp_ping/classe.h:30: erreur : cannot declare member function 'QWebSocket::ping' within 'classe' void QWebSocket::ping(const QByteArray &payload = QByteArray());
Mon .pro ressemble à :
Mon main et mon classe.cpp n'ont rien de particuliers :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 QT += core websockets QT -= gui TARGET = echoclient CONFIG += console CONFIG -= app_bundle TEMPLATE = app SOURCES += \ main.cpp \ echoclient.cpp HEADERS += \ echoclient.h target.path = $$[QT_INSTALL_EXAMPLES]/websockets/echoclient INSTALLS += target
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #include <QtCore/QCoreApplication> #include "classe.h" int main(int argc, char *argv[]) { QCoreApplication a(argc, argv); return a.exec(); }J'aimerais comprendre ce que j'ai raté dans l'intégration des ces deux méthodes
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #include "classe.h" #include <QtCore/QDebug> classe::classe() { }...
Partager