摘要: dynamic_cast ( expression ) 该运算符把expression转换成type-id类型的对象。Type-id必须是类的指针、类的引用或者void*; 如果type-id是类指针类型,那么expression也必须是一个指针,如果type-id是一个引用,那么expression也必须是一个引用。 作用:将一个基类对象指针(或引用)cast到继承类指针,dynamic... 阅读全文
posted @ 2013-09-18 19:27 lc_cnblog 阅读(808) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.cnblogs.com/welkinwalker/archive/2011/03/10/1979745.html预备知识:无名对象,也叫临时对象。指的是直接由构造函数产生,但是没有被任何符号所引用的对象。例如:string("abc"),这句话产生的就是一个无名对象,这个对象产生以后,没有什么办法使用它。但是对于string str("abc")来说,则产生的是一个有名字的对象,他的名字就是 str。任何引用必须初始化。const(对象)变量只能传递给const引用,不能传递给非const引用。假如说把一个const的对象传递 阅读全文
posted @ 2013-09-18 12:51 lc_cnblog 阅读(477) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.cnblogs.com/welkinwalker/archive/2012/03/30/2424844.html#2678295#在英语里面叫做 pound在C语言的宏定义中,一个#表示字符串化;两个#代表连接。#include void quit_command(){ printf("I am quit command\n");} void help_command(){ printf("I am help command\n");} struct command{ char * name; void (*function) 阅读全文
posted @ 2013-09-18 12:49 lc_cnblog 阅读(375) 评论(0) 推荐(0) 编辑
摘要: 数据包经由路由转发时源、目的IP地址及MAC地址变化情况。IP数据包经由路由转发的时候源ip,目的ip,源MAC,目的mac是否发生改变,如何改变?A—–(B1-B2)—–(C1-C2)——-E如上为例,B1和B2是路由器B上的两个接口,C1和C2是路由器C上的两个接口,A和E是PC,由主机A向主机E发送数据包,那么在主机A形成的数据包的目的IP就是E的IP,源IP就是主机A的IP地址,目标MAC地址就是B1的MAC地址,源MAC地址就是A的MAC地址。由A发给路由器B,B经过重封装后,源IP和目标IP是不变的,源MAC地址变成B2的MAC地址,目标MAC地址变成C1的MAC地址,封装完成发送 阅读全文
posted @ 2013-09-11 18:42 lc_cnblog 阅读(1487) 评论(0) 推荐(0) 编辑
摘要: D3DCOLOR 是一个DWORD 型。第一个byte表示Alpha值,后面三个byte依次是r(红)g(绿)b(蓝)值。32位。下面是一些关于D3DCOLOR 的宏:D3DCOLOR_ARGB(a,r,g,b) - 第一个byte表示Alpha值,后面三个byte本别表示红,绿,蓝。D3DCOLOR_RGBA(r,g,b,a) - 前三个byte分别表示红,绿,蓝,最后一个byte是Alpha值D3DCOLOR_XRGB(r,g,b) - Alpha值为1,三个byte分别表示红,绿,蓝typedef struct _D3DCOLORVALUE { float r; float ... 阅读全文
posted @ 2013-09-10 20:18 lc_cnblog 阅读(629) 评论(0) 推荐(0) 编辑
摘要: 1 #include 2 3 #define WINDOWCLASS TEXT("Test") 4 #define WNDTITLE TEXT("Test") 5 6 #define WINDOW_WIDTH 480 7 #define WINDOW_HIGHT 420 8 9 LRESULT CALLBACK WndProc(HWND hWnd,UINT meg,WPARAM wParam,LPARAM lParam); 10 void Clear(); 11 12 13 HDC hMemoryDC; 14 HDC hDC; 15 HBITMAP hB 阅读全文
posted @ 2013-09-07 17:09 lc_cnblog 阅读(509) 评论(0) 推荐(0) 编辑
摘要: UpdateWindow会检查窗口的Update Region,当其不为空时才发送WM_PAINT消息;RedrawWindow则给我们更多的控制:是否重画非客户区和背景,是否总是发送WM_PAINT消息而不管Update Region是否为空。BeginPaint函数的作用就是将窗口需要重绘的区域设置为空(也就是Update Region置空)。在正常情况下,我们接收到了WM_PAINT消息后,窗口的Update Region都是非空的(如果为空就不需要发送WM_PAINT消息了)。而当你响应这个消息的时候又不调用BeginPaint来清空,窗口的Update Region就一直是非空的,系 阅读全文
posted @ 2013-09-04 14:06 lc_cnblog 阅读(1099) 评论(0) 推荐(0) 编辑
摘要: 函数模板不支持模板的模板参数。我们经常模板类的参数一般为类型(int,string,class等),如下形式:template class A{};模板类支持模板作为模板的参数。template A >class B{};模板作为模板参数,参数是一个模板类的完整声明。你可以使用类模板内部的任何类型来实例化模板的模板参数。 阅读全文
posted @ 2013-08-07 17:57 lc_cnblog 阅读(503) 评论(0) 推荐(0) 编辑
摘要: 转自:http://www.cnblogs.com/lancidie/archive/2011/02/15/1955444.html不知道大家是否碰到过这种情况,当某个玩家发出一个火球,这个火球有自己的运动轨迹,那么如何来判断火球是否打中了人呢?大部分情况,当策划提出这个要求的时候,一般会被程序否认,原因是:太麻烦了,呵呵。复杂点的还有包括两个火球相撞之类的事情发生。那么网络游戏中,是否真的无法模拟实现这种模拟呢?首先我们来看看模拟此种操作会带来什么样的麻烦:1,服务器必须trace火球的运行轨迹,乍一想,挺慢的。2,网络延迟,传过来有延迟,传过去有延迟,延迟还不稳定,麻烦。3,都有两点解决不 阅读全文
posted @ 2013-08-07 13:33 lc_cnblog 阅读(448) 评论(0) 推荐(0) 编辑
摘要: 转:http://www.cnblogs.com/lancidie/archive/2013/04/13/3019596.htmltypedef MyData{ int data1; int data2;} * LPMYDATA;const LPMYDATA pData = getData();// do sth elsepData = getNewData(); // compile error2、分析: a、首先我们应该都知道const的使用方法,一些面试题也都喜欢考察这个问题,比如 const char* 和 char const* 和char * const有什... 阅读全文
posted @ 2013-08-06 16:33 lc_cnblog 阅读(279) 评论(0) 推荐(0) 编辑