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");
作为前缀加入'connect'的第一个参数应该是引用,否? –
您提供的代码不包含“Pds :: MonReqServer”,这使得解释错误消息有点难。 –
从你正在做的事情来判断,你并不是故意使用Pds ......任何东西。如果你真的打算使用标准的'connect()'函数,试着用'::'作为前缀 - 你可能仍然会出现链接错误,但它应该更有意义。 – donjuedo