随笔分类 -  C++

主要是数据结构,还有些C++基础知识
mongodb协议透传
摘要:mongodb 协议 透传 阅读全文
posted @ 2013-05-20 15:17 毕海 阅读(1078) 评论(0) 推荐(0)
Boost Serialization在网游中的应用
摘要:网游中需要在客户端和服务器之间传递多个字符串, 字符串的个数不定, 各个字符串的长度也不定.对于长度变化不大的字符串, 可以用最大字符串长度:struct MyCmd : public Cmd{ WORD wNumber; BYTE aStrings[MAX_SIZE][0];};这样会浪费一点带宽.如果不这样, 可以用一个长的数据串, 在数据头部指出字符串的长度, 或者直接用'\0'分隔多个字符串, 如:struct MyCmd : public Cmd{ DWORD dwDataLen; BYTE data[0];};这样需要拼接和解析处理.如果用序列化串... 阅读全文
posted @ 2012-05-25 16:23 毕海 阅读(343) 评论(0) 推荐(0)
Codeblocks的中文支持
摘要:这里以Code::Blocks 10.5版本为蓝本进行说明。首先,请在Code::Blocks里面输入标准的一个C程序:view plaincopy to clipboardprint?#include<stdio.h>#include<stdlib.h>#include<wchar.h>#include<string.h>#include<locale.h>intmain(void){charstr[]="中国china";wchar_tstr_w[]=L"中国china";intlen=(i 阅读全文
posted @ 2012-02-28 11:05 毕海 阅读(3521) 评论(0) 推荐(0)
C++中堆和栈的完全解析
摘要:内存分配方面:堆: 操作系统有一个记录空闲内存地址的链表,当系统收到程序的申请时,会遍历该链表,寻找第一个空间大于所申请空间的堆结点,然后将该结点从空闲结点链表中删 除,并将该结点的空间分配给程序,另外,对于大多数系统,会在这块内存空间中的首地址处记录本次分配的大小,这样代码中的delete语句才能正确的释放本内存空间。我们常说的内存泄露,最常见的就是堆泄露(还有资源泄露),它是指程序在运行中出现泄露,如果程序被关闭掉的话,操作系统会帮助释放泄露的内存。栈:在函数调用时第一个进栈的主函数中的下一条指令(函数调用语句的下一条可执行语句)的地址然后是函数的各个参数,在大多数的C编译器中,参数是由右 阅读全文
posted @ 2012-02-27 16:53 毕海 阅读(300) 评论(0) 推荐(0)