帮助理解计算机程序设计概念和方法的语录(不断更新中)

来源:互联网 发布:java api 1.8中文 chm 编辑:程序博客网 时间:2024/04/30 12:06

1 变量是在编译时分配的,有名称的内存,指针只是为可以通过名称直接访问的内存提供了一个别名。 

2 关于指针的大小:这里所说的指针,是指指针本身,而不是指指针所指向的变量。指针表示一个地址值,用户存储并标志每一个内存单元地址。为了寻址32位机器的全部地址空间,则指针必须能表示(0-2^32-1)范围内的值,那么指针本身大小应不小于4byte。因此对于32位机器,指针大小通常为4byte.

3 如果通过声明来创建数组,则在程序被编译时将为它分配内存空间。不管程序最终是否使用数组,数组都在那里,它占用了内存。在编译时给数组分配内存称为静态联编。但使用new时,如果是在运行阶段需要数组,则创建它。如果不需要,则不创建。还可以在程序运行时选择数组的长度,这被称为动态联编。

4 堆栈就是这样一种数据结构。它是在内存中开辟一个存储区域,数据一个一个顺序地存入(也就是“压入——push”)这个区域之中。有一个地址指针总指向最后一个压入堆栈的数据所在的数据单元,存放这个地址指针的寄存器就叫做堆栈指示器。开始放入数据的单元叫做“栈底”。

5 应用程序启动后,所有的窗口对象加载到地址空间中去,一部分到了占据物理内存,一部分占据虚拟内存(由WINDOWS内存管理自动管理),里面存在两种类型的变量,一种是WINDOWSD对象,一种是普通的对象,对于WINDOWS对象,就存在一个HANDLE(句柄)与之对应。

6 关于句柄:句柄是一种指向指针的指针,所谓句柄实际上是一个数据,是一个Long (整长型)的数据。 句柄是WONDOWS用来标识被应用程序所建立或使用的对象的唯一整数,WINDOWS使用各种各样的句柄标识诸如应用程序实例,窗口,控制,位图,GDI对象等等。WINDOWS句柄有点象C语言中的文件句柄。

7 在Windows编程中,窗口句柄唯一标识了一个窗口。在MFC中,类CWnd是一个很重要的类,它封装了Windows窗口句柄HWND。通常我们使用两个步骤来创建一个窗口:首先调用CWnd的构造函数来构造一个CWnd对象,然后调用其成员函数Create来创建窗口并将该窗口与所创建的CWnd对象相关联。

8   (1)指针消亡了,并不表示它所指的内存会被自动释放。

2)内存被释放了,并不表示指针会消亡或者成了NULL指针。


 

原创粉丝点击