免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 4174 | 回复: 14
打印 上一主题 下一主题

socket库封装请教 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-01-18 09:26 |只看该作者 |倒序浏览
初步想法:
封装5个函数:
服务器:socket,accept,write,read,close
客户端:socket,connect,write,read,close
问题1:不知道这样封会不会太简单了  但太复杂了又不好操作
问题2:能否将UDP和TCP封在一起  有没有共用的接收和发送数据函数

论坛徽章:
0
2 [报告]
发表于 2007-01-18 15:05 |只看该作者
想法很好,系统也给出了很多实现的途径,剩下的就是要自己花力气去实现了。

论坛徽章:
0
3 [报告]
发表于 2007-01-18 15:11 |只看该作者
sourceforge上有挺多的,甚至有直接new tcpserver()之类的封装,呵呵。

论坛徽章:
0
4 [报告]
发表于 2007-01-18 16:25 |只看该作者
想练习,这个想法不错。做应用的话,弄个开源的会更好

论坛徽章:
0
5 [报告]
发表于 2007-01-18 18:12 |只看该作者
原帖由 bigapple2008 于 2007-1-18 15:11 发表
sourceforge上有挺多的,甚至有直接new tcpserver()之类的封装,呵呵。

呵呵,真是越来越高级了 ,以后会不会出现new windowsOS()之类的封装

论坛徽章:
0
6 [报告]
发表于 2007-01-18 22:59 |只看该作者
无语。。。。暴寒。。。碰到传说中的高人了

论坛徽章:
0
7 [报告]
发表于 2007-01-18 23:02 |只看该作者
====

原子操作不好么?难道一定要封装起来?我想听听,优势在哪儿,是否明显多于劣势。

>> 服务器:socket,accept,write,read,close

bind(2),listen(2) 呢?recv(2) 和 send(2) 呢?还有……。怎么办?

====

论坛徽章:
0
8 [报告]
发表于 2007-01-18 23:11 |只看该作者
跨平台?

论坛徽章:
0
9 [报告]
发表于 2007-01-18 23:16 |只看该作者
原帖由 converse 于 2007-1-18 23:11 发表
跨平台?


我是没想明白。

如果说是 WIN32 与 类UNIX 系统之间跨平台:楼主提到的函数,win32 上利用 msvcrt 以及 wsock32/ws2_32 也能用。

如果说要在 类UNIX 系统之间跨平台——没有必要,因为这些都是标准函数。

如果要在 类UNIX 系统与其他系统之间跨平台——壮举,我也支持。

……

====

论坛徽章:
0
10 [报告]
发表于 2007-01-18 23:29 |只看该作者
综合ACE/wxWidgets的特点,自己开发在用的
实现了Win32/POSIX平台的通用
应用:
http://bbs.chinaunix.net/viewthr ... &extra=page%3D2

  1. class MConnector
  2. {
  3.     public:
  4.         int open( conts char* pPeerAddr, unsigned int nPeerPort );
  5.         int close();

  6.         int send( const char* pData, int lenData );
  7.         int recv( char* pBuf, int lenBuf );
  8. };
复制代码
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP