自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

daojin505的专栏

致力于3D游戏引擎的开发

  • 博客(26)
  • 资源 (7)
  • 问答 (1)
  • 收藏
  • 关注

原创 再次证明消息四元组的处理顺序。

1。本窗口动作引起,则过程如下: EraseBkgnd begin     CtlColor begin     CtlColor end EraseBkgnd end Paint Begin Paint End 2。由另外其他窗口动作引起,过程如下: Paint Begin    EraseBkgnd begin        CtlColor begin        CtlColor end...

2010-10-31 21:31:53 113

原创 学习C++

http://blog.csdn.net/lwj1396/archive/2008/12/25/3606390.aspx

2010-10-31 11:06:08 84

原创 c++socket模型之我见

能用UDP尽量用UDP,能不用TCP就不用。TCP要维护连接,错包重发,确认,错序调整等。消耗比较大。UDP只需要再一个端口上进行IO操作,而TCP则需要再不同的端口上进行IO操作。 假设说用TCP:案例1:    建立一个同时维持1000个链接的服务器。先说缺点1。阻塞模型:   1000个链接需要建立2000个线程去receive和send数据。开销相当大。...

2010-10-30 11:20:58 166

原创 最简单的WSAEventSelect模型(注意注释的地方)

// Win32SocketTest.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include "winsock2.h"//#pragma comment(lib,"wsock32.lib")#pragma comment(lib,"Ws2_32.lib")...

2010-10-29 18:05:23 258

原创 C++网络包截取开发

http://hi.baidu.com/eyes0011/blog/item/18f0a9120f5507866438db71.html

2010-10-29 08:26:12 436

原创 MFC内幕

http://www.cppblog.com/citywanderer/articles/8716.html

2010-10-27 11:47:40 134

原创 关于BeginPaint和WM_ERASEBKGND

1。当操作系统意识到无效区域的时候,会向窗口发送WM_PAINT消息。必须调用Beginpaint(),BeginPaint用来为DC获得一个无效区域。以后的绘制只会在这无效区域里面绘制。 2。同时,如果是默认情况下,会发WM_ERASEBKGND消息,这样就会有重新刷新背景的机会。MFC如果指定了Brush,默认的DefaultWinProc会擦除背景一次。要想只擦除一次背景,则必须...

2010-10-25 20:24:33 176

原创 如何控制全局静态常量的初始化顺序

http://support.microsoft.com/kb/104248/en

2010-10-25 11:41:25 88

仿照标准库做了个hashmap!不容易啊。

// ConsoleTest.cpp : Defines the entry point for the console application.//#include "stdafx.h"#include <iostream>#include <string>const int primes[] = {2009,3009,4009,5009,6009...

2010-10-25 03:11:35 86

原创 MFC多线程编程

http://blog.csdn.net/yusheng9966/archive/2008/02/03/2079839.aspx具体来说是:在MFC中调用attach的时候有个宏叫ASSERT_VALID(),这个方法不允许访问非本线程创建的继承于。在CWnd函数里面有一个Valid()的静态方法,检测当前线程的MFC对象指针,是否在当前线程的Map中; 下面就是这个模块中...

2010-10-23 22:42:15 124

原创 ActiveX资源

http://blog.csdn.net/hello1979cn/archive/2009/03/18/4002602.aspx

2010-10-20 21:45:38 74

原创 COM中的IDL语言的难点之接口指针

IDL前置声明语法::SOLVEDAdd a forward declaration - at the TOP of IDL file:import "ocidl.idl"; interface S8SimObject;标准的格式:同时放在OICF中和类型库中import "oaidl.idl";import "ocidl.idl";import "unknwn...

2010-10-19 00:14:37 206

原创 COM技术内幕

 总结了编译Com技术内幕的最后例子的编译问题. 收藏 在编译<Com技术内幕>>的最后一个例子程序时碰到的问题:编译:Canvas1: midl : command line error MIDL1001 : cannot open input file canvas_i.idl      通过菜单: Tool->Options->Directories 把...

2010-10-16 19:53:08 70

原创 COM聚集是什么意思

Aggregation is the object reuse mechanism in which the outer object exposes interfaces from the inner object as if they were implemented on the outer object itself. This is useful when the outer objec...

2010-10-15 18:18:58 124

原创 网站 com入门

http://www.vckbase.com/document/viewdoc/?id=915

2010-10-15 17:32:06 101

原创 C++虚表的机制

1。虚表是在编译时期创建的。2。在运行时,创建对象的时候,同时创建一个指向虚表的指针。首先看是不是虚函数,如果是虚函数,那么就去查询虚表。找到符合实际对象实际类型的函数,并执行。...

2010-10-15 11:18:57 185

MFC运行时

1。MFC运行时GetRuntimeClass(); 虚函数GetBaseClass(); 成员函数GetThisClass(); 成员函数每一个类中,有一个CRuntimeClass的对象,然后把这个类的信息记录到CRuntimeClass类型的成员里面,同时可以找到父类中的此成员,例如,判断当前类是不是某个类型等。构造函数也记录在这个成员里面,这样就可以进行构造。 同时,也...

2010-10-15 09:38:12 113

原创 C++编程模型

Winsock 的I/O操作:1、 两种I/O模式 阻塞模式:执行I/O操作完成前会一直进行等待,不会将控制权交给程序。套接字 默认为阻塞模式。可以通过多线程技术进行处理。 非阻塞模式:执行I/O操作时,Winsock函数会返回并交出控制权。这种模式使用 起来比较复杂,因为函数在没有运行完成就进行返回,会不断地返回 WSAEWOULDBLOCK错误。但功能强大。为了解决这个问题,提...

2010-10-13 23:32:34 159

原创 多线程编程 之 (生产者与消费者(N多))同步常用的方法。

1. 互斥锁+条件变量:          释放锁,等待条件成立 ,然后在条件成立后,得到锁。一次只能wake一个。每个被触发的线程都不停地去取得条件变量。取得之后,去遍历任务列表,执行任务。(思路模糊,效率应该会高一些咯(条件变量是用户模式下的东西))2. 信号灯:          所有线程等待信号灯。直到把信号灯消耗完全。(思路清晰,效率不知道怎么样) ...

2010-10-13 21:53:38 154

原创 策略模式,状态模式,监听模式之间的区分。

把这三个放在一起区分,最主要的原因是这三种模式有共同点,就是都是把行为进行抽象。 1.策略模式一种最简单的。一种策略,当前只能有一个。。2.状态模式可以说是链接起来的策略模式。强调的是各个策略实体类型之间的关联关系。3.监听模式,可以说是,可聚集的策略模式。强调的是,各个策略实体之间没有关系,可广播式触发。如果退化成一个,则与策略模式相同。...

2010-10-13 08:35:30 202

装死模式之我见

1。装饰模式把主要功能和次要功能区分开。对主要功能进行装修,并有可能扩展出新的功能。2。各个装饰实体之间以及各个被装饰的实体之间以及装饰实体和被装饰实体之间都是完全透明的。3.   但是有人说,装饰实体对客户端代码也是透明的。这个说法是错误的。    1.要把创建和使用隔离开,必须用工厂模式才能实现透明化。另外要不要进行完全透明,跟装饰模式没有关系。主要看这个类的继承层次是不是足够简单...

2010-10-12 01:08:15 125

原创 三层模式的优点

三层架构,数据层(DAL)、逻辑层(BLL)、表示层(UI); 三层结构的优点 分层式结构究竟其优势何在?Martin Fowler在《Patterns of Enterprise Application Architecture》一书中给出了答案:1、开发人员可以只关注整个结构中的其中某一层; 2、可以很容易的用新的实现来替换原有层次的实现; 3、可以降低层与层之间的依赖; 4、有利于标准化; ...

2010-10-09 23:03:53 505

原创 设计模式之装饰模式

JAVA中IO流的设计就大量运用了装饰模式。看看我们熟悉的代码:BufferedReader br = new BufferedReader(new InputStreamReader(new FileInputStream("..")));装饰模式的缺点:1. 装饰的组合方式由对象的客户代码决定,很难排错。2.类的减少缺导致了对象数量的增加,为了构造一个三层包装的装饰品,需要构造...

2010-10-09 22:43:05 47

原创 装饰模式的优点

1。扩展原有功能。2。防止类的爆炸式增长。

2010-10-09 22:33:53 197

原创 MVC模式之我见

MVC模式有三层 数据库层,业务逻辑层,展现层。为什么是这三层?      1。为了实现模块儿化开发。      2。对需求进行模块化划分,从而建立从软件模块到需求模块的一一对应关系。           对于需求的改变,就能快速地定位软件模块。缩短二次开发的周期。如果直观的概念            在软件上进行了阐述,软件的可读性就会得到提高。   ...

2010-10-08 22:31:23 62

原创 如何安装fedora13的显卡驱动

http://blog.csdn.net/rainsunQQ/archive/2010/07/26/5766355.aspx

2010-10-07 14:59:22 73

深入理解计算机系统

是本人的珍藏版!亚马逊排名前五,美国喀麦隆大学的教材。复旦选用教材。 高清晰中文版。实际上讲的都是很基础的东西,作为程序员必须知道的一些东西,通俗易懂。

2011-12-05

com技术内幕

此书为com技术内幕。是com的入门书籍。C++初学者必学的书籍之一。希望大家能喜欢。

2011-12-04

JlinkARM_4110i.exe

JlinkArm驱动是一种基于三星板子sc9180系列的板子,此驱动用来对板子进行调试。

2011-09-04

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除