我正在编写Qt TCP/IP客户端.我想在将数据发送到服务器之前检查与服务器的连接状态.据我所知,我可以通过以下方法来做到这一点
哪个是好习惯.或任何其他方法.
提前致谢.
QTCPSocket是从中派生出来的QAbstractSocket,它提供了一种state()功能.这将返回以下枚举之一: -
enum SocketState { UnconnectedState, HostLookupState, ConnectingState, ConnectedState, ..., ListeningState }
Run Code Online (Sandbox Code Playgroud)
因此,假设m_pSocket是a QTcpSocket,您只需执行此操作以检查它是否已连接: -
bool connected = (m_pSocket->state() == QTcpSocket::ConnectedState);
Run Code Online (Sandbox Code Playgroud)
您可以添加布尔值并跟踪状态,但如果发生网络错误,您需要确保它始终与实际连接状态同步.
| 归档时间: |
|
| 查看次数: |
16365 次 |
| 最近记录: |