我已经在OpenGl上编写了一款游戏,并且希望将其制作成多人游戏。 我正在使用Windows,但我实际上是一名C#编程人员。 Socket编程去 太容易在C#,但在C++我解决不了:(适用于Windows的Socket编程C/C++
我应该使用哪个库?Winsock和Winsock2的库是太复杂了。 是否有任何图书馆使用方便像在C#系统。 Net.Sockets?
亲切的问候。
我已经在OpenGl上编写了一款游戏,并且希望将其制作成多人游戏。 我正在使用Windows,但我实际上是一名C#编程人员。 Socket编程去 太容易在C#,但在C++我解决不了:(适用于Windows的Socket编程C/C++
我应该使用哪个库?Winsock和Winsock2的库是太复杂了。 是否有任何图书馆使用方便像在C#系统。 Net.Sockets?
亲切的问候。
我还没有尝试过任何这些,怎么样SDL_net或Qt的?
0123在一些SO回复中推荐使用,例如binding-a-socket-to-port-80-in-ansi-c。试着回顾一下例子,也许你会发现它不是“太复杂”。 Windows winsock
与标准套接字库高度兼容。本教程包含有关programming sockets under Windows的说明。
你可以看看Poco libraries的网络部分。它们不一定像C#一样,但是它们是面向对象的,并且尽可能地避免了网络编程的细节。它们也是跨平台的,这是一个问题。
[强制性注意,你或许应该暴露自己说,在一些点的详细信息。]
看一看the ACE framework。它存在相当长的一段时间。
如果您对网络游戏感兴趣,您应该查看Raknet;或Winsock/BSD套接字,如果你真的想学习引擎盖下的一切!
该Boost.Asio库也相当不错。
如果你正在寻找一个简单的包装来使Socket编程很好地面向对象,你可以看看sockets wrapper layer I wrote作为我的跨平台消息库的一部分。将代码翻出并重新使用它会非常简单。您甚至可能对rest of the library也感兴趣。
同意 - Cmptrbto认为现有的库看起来太复杂了,但他们没有做太多的调查。 – MBillock 2009-10-12 19:31:59