2015-08-17 50 views
1

以下是我收到的错误以及来自它的小部分代码。有人可以解释这个错误的含义吗?我在其他许多程序中成功地使用了这个连接调用,我不知道它为什么会失败。谢谢!TCP套接字。错误没有匹配函数调用

error: no matching function for call to 'Pds::MonReqServer::connect(int&, sockaddr*, long unsigned int)' 



///SETUP TCP SOCKET/// 

int tcp_socket_info; 
struct sockaddr_in tcp_server; 

    //create socket 
    tcp_socket_info = socket(AF_INET, SOCK_STREAM, 0); 
    if (tcp_socket_info == -1) { 
    printf("Could not create socket"); 
    } 

    //assign values 
    tcp_server.sin_addr.s_addr = inet_addr("192.168.0.100"); //address of sender 
    tcp_server.sin_family = AF_INET; 
    tcp_server.sin_port = htons(1100); 

    //connects 
    if (connect(tcp_socket_info, (struct sockaddr *)&tcp_server, sizeof(tcp_server)) < 0) { 
    perror("Connection error"); 
    } 
    puts("Connected"); 
+0

作为前缀加入'connect'的第一个参数应该是引用,否? –

+3

您提供的代码不包含“Pds :: MonReqServer”,这使得解释错误消息有点难。 –

+1

从你正在做的事情来判断,你并不是故意使用Pds ......任何东西。如果你真的打算使用标准的'connect()'函数,试着用'::'作为前缀 - 你可能仍然会出现链接错误,但它应该更有意义。 – donjuedo

回答

0

根据你在做的事情来判断,你不是故意使用Pds...什么。如果你真的打算使用标准的connect()函数,试试用::

相关问题