检查bind()是否失败

时间:2017-01-23 23:45:07

标签: c++ sockets compiler-errors

目前,我正在尝试检查我的代码中的bind()语句是否失败。据我所知,解决这个问题的方法是检查这个条件:

if (bind(sock, (struct sockaddr *)&sock_addr, sizeof(sock_addr)) < 0) 
{
   G4cerr <<  "bind failed: " << strerror(errno) << " " << __FILE__ << ":" << __LINE__ << G4endl;
   return(-1);
}

但是当我这样做时,我收到以下错误:

error: invalid operands to binary expression ('__bind<int &, sockaddr *, unsigned long>' and 'int')

我可以看到&#39;&lt;&#39;是一个二进制操作,它无法比较两种不同的数据类型,但无法理解bind()不返回整数值的原因。

我在这里缺少什么?

PS。这是我实验室中某人编写的GEANT4应用程序的一部分。

0 个答案:

没有答案