计算机科学与技术对于初学者来说有一种莫名的神秘感,因此在学习的过程中非常容易被“编程”的快感所牵制,以至于时常感叹打开书本似乎都搞懂了,但就是不能将所学的知识转化为一种设计能力,原因就在于平时的学习中对技术的细节不求甚解所造成的。堆栈就是一个非常重要的知识点,请初学者一定要下功夫完全了解和准确理解。
事实上在我们的生活中常常会发生这样的情形,当我们正在做“事件A”,如果突然被打断而转去做“事件B”,于是就产生了“断点”。为了保证在完成“下一事件B”之后,返回来从刚才被打断的“断点”处无缝连接继续做“上一事件A”,因此势必在被打断的同时保存“断点信息”,否则无法准确返回到断点处。
如果用计算机来记录这一“断点信息”(在操作系统中俗称“上下文信息”)的话,很显然只要“保存断点信息”到堆栈中,就可以放下“上一事件A”去做“下一事件B”了,然后再在返回来之后从堆栈中“恢复断点信息”即可。 |