VS查看类的内存布局

VS查看类的内存布局_axin

本文是对前人文章的一些总结和新的理解,原文链接

MSVC有个隐藏的“/d1”开关,通过这个开关可以查看项目中类的内存布局情况。

1、查看单个类的内存布局:

修改项目属性(右键 项目→属性→C/C++→命令行),在 其它选项 中添加” /d1 reportSingleClassLayoutCC ”开关,表示需要查看类CC的内存布局。

特别注意 “reportSingleClassLayout” 和 “CC” 之间 没有空格!

2、查看所有类的内存布局:

“ /d1 reportAllClassLayout ” 是查看所有类的布局,这样编译后会在输出界面上输出很多类的布局

3、查看某些类的内存布局:

类名CC的匹配规则如下:

/d1 reportSingleClassLayoutXX,"XX"是填入你想查看的类的名字,编译后会在输出界面上输出类的布局,任何匹配它的类名都会被输出。比如想看class A,你输入了/d1reportSingleClassLayoutA,但是你会发现会编译器输出很多无关的类,如struct ABC、Class inAttribute Class dbA…因为它们的类名都包含有A这个字母。

可以利用这个匹配特性达到查看某些类的功能,例如:

对想要查看的类名特殊命名。
比如:所有想查看内存布局的类名均以 “ Class_1_ ” 结尾
即可使用“ /d1 reportSingleClassLayoutClass_1_ ”查看特定类的内存布局

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值