首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
给你一个类,里面有static,virtual,之类的,来说
[问答题]
给你一个类,里面有static,virtual,之类的,来说一说这个类的内存分布
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(289)
分享
纠错
1个回答
添加回答
0
lyjccmm
我想以我浅薄的学识评论一下这题,不知道是对是错,希望有大佬或者明白人能告诉我。
在我学的知识体系中,我觉得这个图是错的,内存里面是没有.rodata只读数据段,
.rodata应该是目标文件布局中的概念,就是可执行文件。
比如一个ELF
可执行
文件中,有这么几个段:ELF头,段头表,.init,.text,.rodata,.data,.bss,.symtab,.debug,.line,.strtab,节头表,.symtab,.rel.text
当文件加载到内存里面后,.rodata根据系统的一些操作,有时候像单片机就直接加载到ROM里面了,不加载到内存,有时候
常量字符串
加载到.text段,有时候加载到代码里面,比如一些constexpr替换的数字,还有一些加载到.data或者.bss里面。
所以我觉得.rodata这个词不应该出现在内存结构里面。
附上我自己查的一些参考链接
摘自:堆内存和栈内存及C++内存分配 - 走看看
http://t.zoukankan.com/lijianming180-p-12432874.html
摘自:进程虚拟内存的布局_TABE_的博客-CSDN博客
https://blog.csdn.net/TABE_/article/details/124578189
摘自:操作系统(杂)内存区域_三丰杂货铺的博客-CSDN博客
https://sanfengcs.blog.csdn.net/article/details/120560266
摘自:判断C++中一个变量存在的位置(.rodata段 .bss段 .data段还是栈中)_River-D的博客-CSDN博客
https://blog.csdn.net/liurunjiang/article/details/112347657
摘自:数据段(BSS段、DATA段)、代码段(.RODATA)、堆栈段的区别_weixin_34363171的博客-CSDN博客
https://blog.csdn.net/weixin_34363171/article/details/94541777
摘自:linux 目标文件(*.o) bss,data,text,rodata,堆,栈_Sunny04的博客-CSDN博客_bss data
https://blog.csdn.net/sunny04/article/details/40627311
发表于 2022-08-23 03:16:12
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
上传者:
小小
难度:
1条回答
289收藏
723浏览
热门推荐
相关试题
一般情况下,MELF型片式陶瓷电容...
元器件
评论
(1)
下列关于转置卷积的说法,正确的有( )
深度学习
评论
(1)
语言模型是自然语言处理中一个重要的...
机器学习
评论
(1)
如果你在处理一个涉及多个不同大小、...
机器学习
评论
(1)
在处理一个无法完全加载到内存中的海...
机器学习
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题