我只是熟悉网络,但我确实理解术语。我正在使用Visual C ++ 2015中的SFML 2.3.2启动服务器多客户端项目,并且做到了这一点:
#include "stdafx.h"
#include <iostream>
#include "SFML/Network.hpp"
const unsigned short PORT = 5000;
void Server(void)
{
sf::SocketSelector TCPSelect;
// Add listener
sf::TcpListener TCPListen;
if (!TCPListen.listen(PORT))
{
std::cout << "Failed to bind Listener on port " << PORT << std::endl;
}
}
int main()
{
Server();
return 0;
}
输出:无法在端口5000上绑定侦听器
我已将端口5000用于其他小型网络项目,但这是我第一次使用TcpListener。我尝试按原样运行代码,并使用main()中的所有内容。直接打印TCPListen.listen时,它返回错误状态代码。我当然尝试过不同的端口,有些是在我的路由器上进行端口转发,有些则不是(如果重要的话)。
这是关于我的代码的问题吗? (如果是这样,修复它的方法是什么?)或者这是关于其他事情的问题吗?
答案 0 :(得分:0)
我想我似乎回答了自己的问题。我的错误是在设置错误消息时误解了有关TcpListener主题的文档。
如果一切正常,函数listen()返回 0 。我通过在调用listen()后打印侦听器的端口来检查这个,后者返回5000。