
学习总结
笨小鸟
成功来自奋斗,用百分之百的努力去学习。
展开
-
windows的socket缓冲区到底多大的一个小测试
<br />今天测试了一下windows的socket缓冲区大小,缓冲区可分为系统缓冲区和用户缓冲区,服务器开启accept之后不调用recv,观察客户端能发送多少字节,经过测试系统缓冲区大小为8760字节约为8KB,用户缓冲区为8KB。原创 2010-12-29 17:01:00 · 8270 阅读 · 0 评论 -
c++子类和父类成员函数重名
子类和父类返回值参数相同,函数名相同,有virtual关键字,则由对象的类型决定调用哪个函数。子类和父类只要函数名相同,没有virtual关键字,则子类的对象没有办法调用到父类的同名函数,父类的同名函数被隐藏了,也可以强制调用父类的同名函数class::funtion_name。子类和父类参数不同,函数名相同,有virtual关键字,则不存在多态性,子类的对象没有办法调用到父类的同名函数,父类的同原创 2011-07-20 12:32:43 · 12917 阅读 · 4 评论 -
结构体作为参数和返回值原理
结构体作为函数的参数会在调用函数前把整个结构体放到栈上但是不是通过push而是减去esp然后通过mov指令拷贝结构体,push每次都放4字节到栈上。函数返回结构体其实是调用者传一个结构体的地址参数进去,然后函数体内部直接用这块内存初始化并调用构造函数。类的this指针通过ecx传原创 2011-09-19 22:27:52 · 3567 阅读 · 0 评论 -
结构体的构造函数
编译器不会为结构体生成默认的四个构造和析构函数,除非你自己去主动定义,那样结构体在new的时候才会调用构造函数。结构体有虚函数的时候编译器会给结构体生成构造函数。原创 2011-09-19 22:25:21 · 5987 阅读 · 1 评论 -
c/c++返回结构体方法和this指针,平时总结
函数返回结构体其实是调用者传一个结构体的地址参数进去,然后函数体内部直接用这块内存初始化并调用构造函数。类的this指针通过ecx传送。在类函数中使用成员就是this指针加上类成员的偏移,注意有虚函数的对象内存最前面几个字节存放的是虚函数表的地址。c++不懂的地方多用alt+8汇原创 2011-07-19 15:18:55 · 4317 阅读 · 1 评论 -
c++静态成员变量
静态成员变量当是const的时候可以直接在类中去赋值,但是如果不是const则不行。不管是不是const都需要在cpp中定义一下像int class::m_static = 0;原创 2011-07-19 16:21:18 · 765 阅读 · 0 评论 -
最近的一些想法
把工厂方法放到接口的纯虚类中。gate最好不要开发其他可连接的端口增加安全性。校验和算法其实很简单就是利用了取反的值和原值相加全为一的原理。windows为每一个线程建立一个消息队列,线程和窗口消息全部放在这个队列中,可以通过postthreadmsg向这个线程发送消息,也可以通原创 2011-07-15 21:37:38 · 670 阅读 · 0 评论 -
getpeername(),getsockname(),listen(),gettickcount()
1.getpeername()得到连接上来的客户端信息。2.getsockname()得到本地的socket信息。3.windows下listen设置为somaxconn时最多同时能连200个客户端。4.gettickcount的执行速度很快比自己写的函数快一千万次40几毫秒,自己的函数要200多毫秒。原创 2011-06-29 20:35:00 · 918 阅读 · 0 评论 -
奇怪问题绑定和监听127.0.0.1把网络禁用还是可以成功。当网络断开时accept不会返回错误。网络再次连上时还能正常工作。
奇怪问题绑定和监听127.0.0.1把网络禁用还是可以成功。当网络断开时accept不会返回错误。网络再次连上时还能正常工作。无论当网络绑定的什么地址断开时所有的连接都被关闭,监听的套接字除外。原创 2011-06-28 20:18:00 · 1566 阅读 · 1 评论 -
一个socket能接收多少连接?
今天测试了一下一个服务器socket能接受多少连接,在只连接不发任何数据的情况下是16000多,最后的错误码是10055“由于系统缓冲区空间不足或列队已满,不能执行套接字上的操作。 ”这个估计和操作系统和内存有关系,我的内存2GB。现在不清楚首发数据的情况下能链接多少socket,多少socket是稳定的。原创 2011-02-17 15:08:00 · 3775 阅读 · 0 评论 -
读写文件时缓冲区多大好呢?我来告诉大家哈
<br />今天测试了一下读写文件时缓冲区多大合适的问题,缓冲区的大小并非我之前想的那样越大越好,测试后发现竟然是64KB时最快啊。下面是测试用的代码大家看一下有问题请指正:<br /> HANDLE h = CreateFile(m_file_name,FILE_ALL_ACCESS,0,NULL,OPEN_EXISTING,FILE_ATTRIBUTE_NORMAL,NULL); if (h==INVALID_HANDLE_VALUE) { return GetLastError();原创 2011-02-10 14:16:00 · 11800 阅读 · 0 评论 -
python,flash记录
脚本通常是处理特殊逻辑和特殊任务时使用那样比较方便,降低了程序的维护时间,减少了主程序代码量。mfc自绘子控件OnCtlColor。py_initialize初始化python。py_initmodule初始化c++模块。pyrun_simplestring运行python语句用于注册路径什么的。flash和javascript通信用externalinterface。原创 2012-05-12 21:13:58 · 1732 阅读 · 0 评论