请问下如何理解C++的内存分布

请教下怎么理解C++的内存分布
1. C++内存分布具体指的是什么,是C++源码中的数据在由其生成的可执行文件 运行时在系统中的分布情况?
2. C++源码中的所有数据是不是在系统内存中都有对应的布局?
3. C++内存分为全局区,栈区,堆区,代码区,他们之间是联系连续分布的,还是随机的,在系统中分别有固定起始地址,固定长度?
4. 全局区是存放着全局,静态,常量变量,栈是局部变量,堆是动态申请的变量,那代码区是什么,程序中的函数?类的成员函数,还是全局函数还是其他?

O(∩_∩)O谢谢...

------解决方案--------------------
深入探索C++对象模型

http://download.****.net/detail/liaofan009/2410846
------解决方案--------------------
这些。。。
我觉得你还是看书比较好,纯理论的东西,要自己去看书,然后用代码执行过才能明白的
------解决方案--------------------
探讨

深入探索C++对象模型

http://download.****.net/detail/liaofan009/2410846

------解决方案--------------------
让数据找到自己的位置 C++内存分配方式详解
http://dev.yesky.com/348/30179848.shtml

想快速了解,google,baidu
想具体了解,看书吧。
------解决方案--------------------
赵老师呢~
------解决方案--------------------
1. 研究一下Stanley B. Lippman写的Inside C++ Object Model
2. 一个进程在内存中的布局
------解决方案--------------------
看书吧!!
------解决方案--------------------
探讨
赵老师呢~

------解决方案--------------------
建议找一本C语言程序设计仔细读一遍, 有些东西不懂不行, 有些根本不必懂.
------解决方案--------------------
看到这个评论,只能禁不住说句“卧槽”了。

任何问题都通用的回答,卧槽啊这哪是答案简直是圣经是葵花宝典 建议图灵奖颁给赵老师

探讨
引用:
赵老师呢~

理解的根基是亲自观察,不是嚼剩饭和道听途说。

VC调试(TC或BC用TD调试)时按Alt+8、Alt+6和Alt+5,打开汇编窗口、内存窗口和寄存器窗口看每句C对应的汇编、单步执行并观察相应内存和寄存器变化,这样过一遍不就啥都明白了吗。
对VC来说,所谓‘调试时’就是编译连接通过以后,按F10或F11键单步执行一步以后的时候,或者在某行按F9设了……