自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xujiezhige的专栏

细水长流 学无止境

  • 博客(16)
  • 资源 (9)
  • 收藏
  • 关注

原创 待解决问题提醒

为什么线程中那套AfxGetMainWnd()->MDIGetActive()->GetActiveView();不能使用,暂且不考虑类型问题,因为类型问题已经测试过,没用。为什么在创建文档的时候,在CView类的OnInitUpdate里面得想得到与文档关联框架指针是空呢?

2011-02-25 14:47:00 787

原创 MFC工作线程中获得视图类指针问题

今天写的代码很无语,原来稳稳妥妥的代码,在线程中却神乎其神的不管用了。我查了网上的资料,只收集到一位高手的留言:通常来讲,在MFC中,跨线程是不能传递CWnd对象指针的。因为在每个线程中都有一个自己的内部map,该map记录了HWND和与之对应的CWnd对象。当一个CWnd对象被创建时,它的HWND和CWnd对象指针就会被记录到该线程中的map,但其他的线程的map没有记录。 当跨线程传递C

2011-02-24 21:07:00 3366

原创 MFC的工作线程揭秘-CWinThead自动删除揭秘

呵呵,说揭秘其实是说给自己听的,因为今天做了个MFC多线程优先级的例子,在线程里面使用了AfxGetMainWnd()->MDIGetActive(),返回值类型暂不讨论,就是这套东西在线程中具有诡异现象,查了一点说是线程里面有个map记录了窗口指针和其句柄的映射关系,使得有些指针不好使。等查明后在补全这里。 今天主要写的是另一个问题,创建工作线程时,AfxBeginThread返回的CW

2011-02-24 20:47:00 6514 4

原创 MDI的多种文档类型

由于具体细节比较复杂,只说一下大道上的。回想不起来就看《深入浅出MFC》。嘿嘿! 要实现多文档类型,主要是要添加相应的DocTemplate,然后在用App里面的AddTemplate将文档类型保存起来。在创建新的文档类型是:要分别为原来的文档类型准备相应的一套资源(菜单,图标等)(手动添加),以及添加这套资源对应的字符串资源。然后就完成相应的CDoc类,CView类,CMDIChildF

2011-02-23 22:55:00 1366

原创 CSpitterWnd的自动调整大小

通过CDocTemplate我们可以再在新建窗口的时候,其中的创建过程《深入浅出MFC》已经讲解,这里我大体缕一下。1:通过找到相应的文档模板。2:通过文档模板动态创建相应的文档类,框架类,视图类。3:三者的创建顺序是,先文档类,后创建框架类,框架类通过LoadFrame完成创建,然后发出的WM_CREATE消息,会激发OnCreate函数,而此函数调用OnCreateHelpre,此

2011-02-23 13:54:00 4180 5

原创 utf-8与unicode

字符编码是从ASCII开始,那时候美国为了解决的字符问题,提出了ASCII码。每个字符占用一个字节。但ASCII编码实际只用了7位,空了一位。后来等计算机传播开来,欧洲的各个国家出现了新的字符编码的问题。如法国,出现了很多在英文字符上面加标记的字符,所有实际字符超过128种,但正好,一个字节总共8位,原来ASCII原来不用的那一位就派上用场了。但是这使得欧洲的各个国家之间的字符编码有冲突,也就是说

2011-02-22 21:46:00 708

原创 MFC零散知识点收集站

1:截获消息改写CWinApp的PreTranslateMessage()函数,用来在消息被派送的TranslateMessage和DispatchMessage之前对消息进行过滤。所以可以在这里对消息进行截获。截获的方法是直接返回return TRUE; 如果只是简单对消息进行加工,就采用默认的return CWinApp::PreTranslateMessage(pMsg);

2011-02-19 13:59:00 802

原创 MFC 多视图同步画图解决方案

今天看《深入浅出MFC》时,看到要做多视图同步画图问题,此书上刚介绍完单视图画图后,引出多视图画图的问题(多视图是指一个子视图窗口中多个视图区域,由SpliiterWnd分割生成的)。存在相互通知,并特别强调绘图效率的问题。我迫不及待的用自己的想法实现了这个高效率绘图问题。后来看了一下书上的方法,确实也不错,但感觉比我的绘图效率低。我的绘图方法其实是因为书上开始讲的单视图绘图的方法,给了我一个用此

2011-02-19 11:47:00 3987

原创 类成员函数指针区别于用法

通常的函数指针大家已经非常熟悉了。但我们今天讨论一下类成员函数指针的用法。今天我们来看一下成员函数指针,加入我们想要声明一个 void CTest::Show()成员函数指针类型,那么我们一般的做法是:typedef void(CTest::*pShow)();从上面可以看出一些和一般函数指针类型不同的地方。让我们把他和一般的函数声明比较一下。下面是一般的函数声明:typedef

2011-02-16 23:22:00 1719

原创 非MFC规则DLL用法总结

今天让我总结以前前几天断断续续从网上学习的DLL用法。首先呢?首先呢DLL可以看做可以从其他地方拿过来用的容纳变量和函数的仓库,我们的仓库经历了“无库-静态链接库-动态链接库”。 首先我们看看静态链接库和动态链接库的区别。静态链接库在和你程序编译的时候把它本身也加到到exe文件里面了,当然是指它本身被编译后的二进制码。而动态链接库则不然,我们一般通过动态链接库的lib文件和

2011-02-16 23:19:00 1963

原创 C++输入输出零散点

C++中文件打开模式一个需要注意的模式:ios_base::ate:此模式在C++中,单独使用或者配合std::ios_base::out会截断文本。但如果配合std::ios_base::in|std::ios_base::out则是追加到末尾。不会出现第一个字节在末尾,然后其他的从头开始覆盖。 C++中c语言的标准输出printf:printf("%02x",12);%x是

2011-02-15 23:04:00 1116

原创 #define用法总结

刚开始接触VC++的同学们,估计对这个东西有这莫大的恐惧。这个经常写在添加头文件的地方的奇怪语句。如果看过mfc那么,那么拿出一些application framework里面的宏,估计会吓死一片。说了这么多只是想说,不明白其用法的人很害怕,但要是知道它,熟悉它,那么你会觉得它很美妙。 进入正题:#define的个用法: 1:#define MAX  0x18第一个用法

2011-02-15 20:02:00 10328 2

原创 内存对齐用法小结

今天偶然在贴吧里面看到有人问struct A{  char a;  double b;}; 使用C++的sizeof(A);结果为:16。 已经周折才把这个搞明白了。 下面我来说一下,看你能看的懂吗: 从大的方面来讲,今天我们说的这个内存边界对准,其实是为了提高内存访问速率,同时也提高了程序的可移植性。我主要说明提高内存访问速率。

2011-02-14 14:48:00 1107

原创 虚函数重要性质总结

我们经常用虚函数完成运行时的类函数多态行为。这是很基本的了。 但是我们想这样一个问题?如果我们想我们的类层次结构实现一个函数多态,那么我们就会想着为我们类层次结构中的基类添加虚函数,然后派生类依次重写。但是不是只有直接调用虚函数才能实现多态行为呢? 别忘了,我们函数之间是可以相互调用的,你也看到我说的是直接。所以,我们可以通过基类一个普通函数,让此普通函数调用虚函数,实现派

2011-02-12 19:33:00 1236

原创 C++中的零散重要知识点

(一):类相关static 在类中的关键是用在类中的静态变量除了整型,枚举类型(枚举也是以整型存储的)的const类型可以在类中初始化。其他的都不能在类中初始化。(注意还必须是const类型才能)如果不是整型或枚举的const类型,那么都要在类外初始化。如:class A{ static int a;};int A::a=1;其中类的静态成员初始化不受访

2011-02-11 18:27:00 2348 4

原创 typedef的用法小总结

首先是typedef历史遗留问题,经常看到很多人写结构体就写:typedef struct _A{int a;int b;}A; A b;我就一直很纳闷,为什么不直接写_A b呢?昨天查资料才知道,原来这个是因为c语言遗留下来的,在C语言中,结构体对象声明必须加关键字struct,所以按C语言语法是:struct  _A b;大家都知道程序员很讲究效率,编代码也是,能少些一

2011-02-11 11:22:00 1123 1

堆排序Demo

工作2年了,但是却没有写过堆排序,这次专门用了一上午写了一个堆排序,并且打印出排序的所有过程。

2014-10-16

protobuf-2.0.5编译完成版

protobuf编译有坑。 1.不要实用rebuild,因为很多项目工程编到一个文件里面,后面的会把前面生成的lib删掉。 2.如果发现COFF错误,将【嵌入清单】选项改成【No】

2014-08-19

DumpBatchProcess

batch process dumps, you can get a analyze file, where stack information stored.

2014-04-08

CEGUI-0.7.4_输入法案例相关代码及资源

1.由于整个 CEGUI-0.7.4 及 dependencies 太大。只上传与输入法相关的代码和资源。 2.找个新的 CEGUI-0.7.4 SDK 然后把附件的代码资源直接覆盖。然后编译跑起来既可以。 3.前提是你的CEGUI-0.7.4 能显示中文

2014-02-13

cocos2d-x层级窗口消息机制Demo

一个使用cocos2d-x层级窗口消息机制的小Demo。

2013-08-06

CEGUI-0.7.4以上版本-vs数据格式化调试

CEGUI的String类型在vs调试中,我们无法看到其字符串的值,因为它是utf32编码。为了方便CEGUI的调试,我根据vs调试插件规范,编写了这个CEGUI调试插件,可以再调试的时候,直接显示String对象的值和Window::d_name的值。

2013-07-12

d3dx_skinnedmesh.pdf

D3D中一个非常好的学习骨骼动画的文档,这里面结合实际代码讲解十分详细。

2012-03-23

Tone mapping

Tone mapping技术文档. Photographic Tone Reproduction for Digital Images.

2012-03-15

Dynamic Parallax Mapping with Soft Shadows.pdf

GDC大会的技术文档。原创POM的技术文档。

2012-03-06

空空如也

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

TA关注的人

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