发信人: skyice()
整理人: wenbobo(2002-12-24 09:18:33), 站内信件
|
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 类别 类型 说明 —————————————————————————————─— 编译器 Automatic(自动) 局部变量或局部对象。在函数入口 用栈空间建立,退出时释放。 —————————————————————————————─— 在任何函数作用域外定义的全局变 还包括字量和全局对象。静态数据 Static(静态) 符串常数。用 static 关键字定义 的变量和对象也添加到静态数据存 储区。这种数据的生命期就是其可 执行文件在内存中驻留的时间。 —————————————————————————————─— 类成员数据是指根据对类的成员数 据的定义,在对象中分配的变量和 对象。这种数据的寿命和它所在的 class(类) 对象相同。局部(堆栈)对象中的数 据在函数入口分配,退出函数时清 除。全局(静态)对象中的数据在可 执行文件驻留内存期间一直存在。 —————————————————————————————─— 调用 malloc()或 new() 操作符分 配的内存。对于合理的内存管理, 动态分配 应用程序应当对所有分配的数据区 和对象调用 free()或者 delete() 操作符。 —————————————————————————————─— 调用 GlobalAlloc()分配的内存。 在 Win16 中, 它对应一个已分配 Win16 全局堆类型 的段。 在 Win32 中这种对象是在 一个 Win32 进程堆中分配的(就象 LocalAlloc() 分配的内存)。 ——————————————————————————————─ 调用 LocalAlloc() 分配的内存。 在 Win16 中, 它对应子段分配。 局部堆 在 Win32 中, 这样的内存驻留在 Win32 私有堆中,就象 GlobalAl- loc() 分配的内存。 ——————————————————————————————─ 在资源 (.rc)文件中定义的只读数 据。预定义的类型包括菜单、对话 资源 框和字符串表。使用本章将要讲解 的技术,程序中还可以创建自定义 资源类型。 ——————————————————————————————─ 存储于内存表中,使用唯一的整数 ID 访问的字符串。无论是 Win16 API 还是 Win32 API,都包括 Ad- dAtom()、FindAtom() 和 Delete- 原子 Atom()。在内部,Windows 将原子 用于注册的剪贴板格式和注册的消 息。应用程序可以把全局原子表用 于动态数据交换 (DDE) 支持。 全 局原子例程包括 GlobalAddAtom() 和 GlobalFindAtom()。 ——————————————————————————————─ Windows 为每一个已创建的窗口创 窗口额外字节 建的实例数据。窗口额外字节是除 系统自身存储区以外的私有字节。 ——————————————————————————————─ Windows为每个已定义的窗口类(不 类额外字节 同于 C++/MFC 窗口类)创建的实例 数据。类额外字节是除系统存储在 类中的数据以外的字节。 ——————————————————————————————─ 和 Windows 动态相连的属性。 例 如, 你可以创建一个 COLOR 属性 属性 并且附上一个颜色索引。通过调用 Win16 / Win32 例程 SetProp()、 GetProp()和RemoveProp() 访问。 ——————————————————————————————─ 通过调用 VirtualAlloc() 按页增 量私有内存 (在 Windows 98 中为 Win32 私有页 4K,Windows NT 中可能更大)分配 的内存。在用 MEM_RESERVE 标志 调用这个 Win32 函数时, 它还要 保留一定范围的地址。 ——————————————————————————————─ 调用 HeapAlloc()分配的内存。调 用 HeapAlloc() 可以在 Win32 进 Win32 私有堆 程中创建多个堆。通过调用 GetP- rocessHeap()可以得到进程的默认 堆。 ——————————————————————————————─ 基于单个线程分配的内存。共有两 线程局部存储 种类型:动态线程局部存储是调用 TlsAlloc() 分配的。 静态线程局 部存储是编译器分配的。 ——————————————————————————————─ 调用 MapViewOfFile() 分配的内 存,这个函数还根据文件句柄参数 共享页 创建一个内存映射文件的视图。非 法的文件句柄值(-1)创建共享页, 合法的文件句柄值创建内存映射文 件。 ——————————————————————————————─ 用 __declspec(thread) 声明的静 态(全局)变量,定义可执行映象中 共享区 的共享区。载入内存后,这样的变 量无论在 Windows 98 中还是在 Windows NT 中, 都可以在程序的 进程间共享。 ——————————————————————————————─ 文件调用 MapViewOfFile()连接到 内存映射 进程地址空间的共享页。注意,这 和创建共享页用的是同一个 API。 ——————————————————————————————─ 可执行映象 内存中的可执行文件 (.EXE) 或动 态链接库 (.DLL)。 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ repus (Super) 回帖: 我不知道你的文章实摘的还是写的,但恕我直言,有问题。 class是不是属于一种存储类别也许是见仁见智, 但 __declspec(thread)绝不是共享存储器,而是线程局部存储(TLS)的一种。 -- 欢迎您到C语言版来! 欢迎光临BBS系统版!
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.99.93.6]
|
|