【发布时间】:2020-02-10 09:42:16
【问题描述】:
for (const auto & rRec : m_map_handshake)
{
if (rRec.second->GetHostName() == inet_ntoa(c_rSockAddr.sin_addr))
{
return true;
}
}
我有这样的代码,但是基于范围的 for 循环在旧的 gcc 编译器上不起作用。
有什么办法可以解决这个问题吗?我不是 C++ 专家
【问题讨论】:
-
我会建议
std::find_if,但没有 lambda,就不太好... -
请向我们展示一个不适合您的最小可重现示例。
-
实际上,基于范围的 for 循环在底层使用迭代器。 solution provided by @Wander3r 是您正在寻找的 ;)