一。 使用gcc编译网络中的程序时可以顺利通过,但是改用g++编译时会报错,
int addrsize;
accept(mysock, (struct sockaddr *)&pin, &addrsize);
这个问题的解决方法为:强制转换,如下
accept(mysock, (struct sockaddr *)&pin, (socklen_t *)&addrsize);
二。如果直接将linux下套接字编程中用的connect和accept函数,在qt中使用,编译器会提示找不到匹配的函数,
仔细分析,原因是,qt类中有不少相似的函数,为局部的,编译器会优先找局部定义的函数进行匹配,
会报错,这时在调用的函数前加::,指明为全局的就不会报错,如::accept(mysock, (struct sockaddr *)&pin, (socklen_t *)&addrsize);对于这个问题,可以写一个简单的c++程序进行测试
阅读(1198) | 评论(0) | 转发(0) |