《Windows程序设计》第5章学习笔记

来源:互联网 发布:虐杀原形2mac版打不开 编辑:程序博客网 时间:2024/05/10 19:56

第5章 框架管理基础

 ----5.1 运行时类信息

 ----5.2 调试支持

 ----5.3 框架程序中的映射

 ----5.4框架程序的状态信息

 ----5.5框架程序的执行顺序

5.1 运行时类信息

1、动态类型识别(Runtime Type Infomation,RTTI):程序在运行的过程中辨别对象是否属于特定类的技术。

2、动态创建:程序运行的过程中创建指定类对象的技术。

动态类型识别靠类中的静态变量,动态创建靠类中的静态函数。

5.2 调试支持

调试版 Win32 Debug

发行版 Win32 Release

单步调试

断点调试

F5调试运行

F7组装

F10单步调试

F11调试进入函数内部

Ctrl+F10执行到当前光标所在行停止

Shift+F5终止调试

OutputDebugString  向调试器输出一些信息

运行在调试环境下,编译器自动定义宏_Debug

_asm

{int 3} 代码设置断点

ASSERT 断言 ASSERT(TRUE)程序运行 ASSERT(FALSE)程序停止

VERIFY 核对 等同于断言

5.3 框架程序中的映射

指针到指针的映射

句柄到对象指针的映射

申请一块较大的内存以解决内存碎片

5.4框架程序的状态信息

1、如何保存模块的状态?

2、模块状态和线程状态的关系?

3、CThreadLocal.GetData的使用?

MODULEENTRY32

CreateToolhelp32Snapshot(TH32CS_SNAPMODULE, 0);

Module32First

Moudle32Next

5.5框架程序的执行顺序

问题:

va_start(ap,v)

va_arp(ap,t)

va_end(ap)

_vsnprintf

(void)0

可变参数

TCHAR