我初次接触socket编程,大家平常时用socket还是一般用CSocket的呢,希望能说说除了面向对象特性外两者有什么优点和缺点,用CSocket能不能完全代替socket?回复者全部送分

解决方案 »

  1.   

    CAsyncSocket/CSocket一般的应用更方便,API更灵活,但也需要更多工作。而我的方式是自己重新封装了个CMySocket类。
      

  2.   

    强烈推荐使用socket api而不要去用什么CAsyncSocket/CSocket之类的因为这些类同样是用socket api来封装的,其中的很多东西在你明白原理以后还是不要它的封装,自己来“亲自操刀”会比较好^_^
      

  3.   

    DentistryDoctor(雅克医生(潜心修内功)) 把你那个 CMySocket类 发一份给我好吗?我的Email是: [email protected]
      

  4.   

    CSocket用的是winsock1.1 但是有完整的消息体系用socket支持任意版本的winsock 包括winsock2.0 这一点很重要哦! 消息机制也可以自定义 难度不大 但可扩展性好 并有助于了解网络编程的基本思路 而且在Linux下也一样开发自如因此推荐用socket 不要用封装的CSocket或CAsyncSocket
      

  5.   

    可能是我的应用比较初级吧。我觉得CAsyncSocket封装的很不错啊,把消息机制也封装进去了,也不需要开多线程,用起来很方便。
    当然了我并没有考虑到要支持winsock2.0也没有想过要跨平台。
      

  6.   

    socket api太烦琐
    要写的代码太多
    而且那数不清的结构我看着发毛
    函数太乱
    虽然可以信手拈来
    要阅读原代码是十足的苦差事
      

  7.   

    刚开始可以用CSocket类,但是万一你想自己封装一些东西,那还是最好用最原是的socket api了
      

  8.   

    我一直用socket api,虽然麻烦灵活一些,便于了解内部原理阿,掌握了就很爽了
      

  9.   

    各有千秋阿,微软既然封装就自有它封装的优越性阿,用CSocket作客户端不是蛮爽的吗?干嘛非要去了解地层的东西呢,如果不用到的话。
      

  10.   

    如果想要快速入门,CSocket肯定是不错的选择但是想要使用一些高性能的socket的模型,这些封装的类就难免有点碍手碍脚了:)