跨平台简单的TCP / IP API?

时间:2010-11-21 00:17:29

标签: c++

我正在制作一个简单的跨平台聊天程序。我正在使用wXWidgets用于GUI,但是我需要一种方法来创建套接字并创建服务器客户端设置。是否有一个API,例如底层使用Windows上的WinSock,以及Linux的本机套接字和osx?

我不是在寻求提升作为解决方案,因为我会将其开源,并不是每个人都想安装一个70多MB的库。

由于

5 个答案:

答案 0 :(得分:5)

QtNetwork模块

答案 1 :(得分:5)

Winsock与POSIX套接字API完全兼容,大多数标准功能都可用。标题的名称不同,但简单的#ifdef可以解决:

#ifdef _WIN32
#include <winsock2.h>
#else
#include <sys/socket.h>
#include <sys/types.h>
#include <netinet/in.h>
// other headers you may use
#endif

答案 2 :(得分:1)

wxWidgets本身有TCP客户端/服务器类:请参阅here

答案 3 :(得分:0)

Apache Runtime怎么样?以下是详细说明套接字定义的页面:

http://apr.apache.org/docs/apr/trunk/group_apr_network__io.html

答案 4 :(得分:0)

我正在回答这个七年前的问题,希望有一天能帮助某人(:

我未能在套接字上找到跨平台,轻量级 API。 (有poco,boost asio和其他人,但他们是大型,全面和复杂的图书馆)

所以我在POSIX套接字和Winsock上做了一个简单的(而不是完整的)包装器:https://github.com/soroush/libcpnet