C++网络编程方面用什么库或者框架?

ofcourseqi 2009-05-31 05:10:08
我现在就会winsock。有没有什么库啊?
还有一点,现在那些http、ftp、icmp等协议跟网络编程有什么关系?怎么用他们啊?
纠结中...
...全文
1444 20 打赏 收藏 转发到动态 举报
写回复
用AI写文章
20 条回复
切换为时间正序
请发表友善的回复…
发表回复
uuussseeennn 2009-06-01
  • 打赏
  • 举报
回复
封装socket是必须的,但只是这个库的基石,其强大之处远不在此。
hofstede 2009-06-01
  • 打赏
  • 举报
回复
ACE这么复杂?
uuussseeennn 2009-06-01
  • 打赏
  • 举报
回复
ACE是C++中最好的网络编程库,其优点是跨平台,有许多十分好用的模式和框架,能大大降低网络程序的开发时间和出错率,缺点是其学习曲线十分陡峭,必须要有socket网络编程基础,对C++语言的深刻理解(要能轻松搞定模板)以及熟悉设计模式,否则学习过程就像云雾中奔跑一样,把你累个半死,还不知道跑到哪里了。
98440622 2009-06-01
  • 打赏
  • 举报
回复
看自己的需求了,多大规模,要达到什么样的性能等等,没有一种库或框架是全能的,合适应用的就是最好的。
DreamFreeLancer 2009-06-01
  • 打赏
  • 举报
回复
本博主正在进行一个开源的通信平台项目,相信会对你有帮助,
项目源码:https://fy2009.googlecode.com/svn/trunk/ fy2009
相关博克:http://blog.csdn.net/dreamfreelancer
ysysbaobei 2009-06-01
  • 打赏
  • 举报
回复
顶下
犇犇犇程序猿 2009-06-01
  • 打赏
  • 举报
回复
回帖有很多不错的!呵呵!
BenjaminHuang 2009-06-01
  • 打赏
  • 举报
回复
从编程人员的眼光来看,Winsock 或者 POSIX socket 是对 TCP/IP 协议栈中 物理,链路,网络,传输层的封装和抽象,在这个基础上将传输的数据根据应用层协议(如楼主提到的http、ftp)进行解析和处理,便可实现端对端的网络应用。
常用的应用程协议处理在某些系统的平台 SDK 中会有封装好的类库,比如 Win32 的 WinHttp, WinInet,或者可以找开源的第三方库,他们一般都是基于 POSIX 中的 Socket API 的。

ACE 是个很不错的开源跨平台网络中间件类库,它在自身提供的 Socket API, 进程,线程,并发机制的 Wrapper Facade之上,封装并实现了多种分布式应用的模式和框架,但是个人觉得不太适合初学者。

所以建议还是按照这个学习曲线,把基础打扎实,然后再转入到库和框架的运用当中:
TCP/IP 协议栈基础 -> POSIX socket API 以及重要的系统调用(如 select) - > 特定平台的 socket 实现 (比如楼主所说的 Winsock) -> 相关的类库或函数库

如果是特定在Win32平台下编程的话,可以减少对第二项的重视程度,然后在学习第四项时选择 MFC 中和 Windows Sockets 和 Internet Services 相关的类进行学习(你可以从MFC的类库层次图上得到相关的信息)。此外 MSDN->Win32 and COM Development->Networking->Network Protocols 这一部分有很多值得你学习的内容。
liubuweiright 2009-06-01
  • 打赏
  • 举报
回复
WINPCAP等SDK


WINSOCKET也有
shuashua0 2009-05-31
  • 打赏
  • 举报
回复
z只有socket 不可以啊
kostion 2009-05-31
  • 打赏
  • 举报
回复
socket应该是所有库的基础吧,搞定就ok了
九桔猫 2009-05-31
  • 打赏
  • 举报
回复
ACE有点大,好多是直接封装Socket
  • 打赏
  • 举报
回复
ACE跨平台,不过确实很庞大
谭建新 2009-05-31
  • 打赏
  • 举报
回复
ACE 和 boost asio 都还不错.
zzqccc 2009-05-31
  • 打赏
  • 举报
回复
http、ftp、最基本的网络协议,跟网络编程关系大了去了……
liuka 2009-05-31
  • 打赏
  • 举报
回复
ACE太庞大了
使用boost的asio吧。轻量级的
chenzhp 2009-05-31
  • 打赏
  • 举报
回复
ACE很流行啊
qizhao2001 2009-05-31
  • 打赏
  • 举报
回复
ACE 敬请关注我的博客 http://blog.csdn.net/qizhao2001 http://hi.baidu.com/tu2s/blog

boost asio

如果你用BCB的话 indy, 推荐用 indy9
冷月清晖 2009-05-31
  • 打赏
  • 举报
回复
ACE用得比较多。

那些就是一些协议。
coverallwangp 2009-05-31
  • 打赏
  • 举报
回复
MFC中都有相应的类

其他的库里面也有,查看相关文档

64,676

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧