【发布时间】:2017-10-30 20:09:57
【问题描述】:
这是我的循环;
for (sf::TcpSocket &client : clients)
{
...
}
在循环中,我想检查是否有人断开了连接,如果是,则将其从用户列表中删除,我只是不知道如何检查列表中的哪个用户。
用户列表是 100 个 sf::tcpsockets 的向量 在循环中,如果有人断开连接,我只需使用 continue 语句跳过其余代码。
我通过发送“ping”检查他们是否已断开连接,如果没有给出响应,则他们已断开连接。
有一个用户列表,被命名为客户
【问题讨论】:
-
元回答:如果要修改范围本身,请不要使用这种循环。
-
用户列表是什么?而实际的
std::list?或者像std::vector这样您希望索引到的随机访问?或者你有参考的client? -
另外,
std::remove_if可能已经成功了。 -
所以,只是为了 (int i = 0; i
-
最后,您如何知道它们是否已断开连接?
标签: c++