堆与栈在内存里是怎么分配的?

 时间:2026-05-01 06:56:19

1、​当我们看到一个变量类型是已知的,就分配在栈里面,比如INT,Double等。其他未知的类型,比如自定义的类型,因为系统不知道需要多大,所以程序自己申请,这样就分配在堆里面。

堆与栈在内存里是怎么分配的?

2、值类型与引用类型的分配,如图:

堆与栈在内存里是怎么分配的?

3、简单来说,值类型是分配在栈里面,引用类型分配在堆里面。

那从内存的分配角度来看,是因为值类型,已经知道了类型的范围大小,可以进行有效分配,比如int,计算机是知道其范围的,所以直接由系统分配在栈中,无需自己申请!


而新的类型,比如自己定义一个类,很明显这个类是不知道大小的,应该有程序自己来申请内存空间,所以由堆来分配!
  • win10找不到Realtek如何解决
  • 电脑打开后屏幕不显示、键盘灯不亮怎么办
  • win10电脑扬声器没声音解决方法
  • win10声音怎么设置
  • Win10卸载声卡驱动详细教程
  • 热门搜索
    老中医化妆品怎么样 昆山旅游 凉拌木耳 三亚自由行旅游攻略 孕妇可以纹眉毛吗 脸部痤疮怎么办 假如记忆可以移植 有多少爱可以重来歌词 怎么样共享打印机 大宝洗面奶怎么样