Visual Studio 打印类的内存布局

VS里有一个选项可以在编译的时候打印出类的内存布局,对于了解内存布局非常有帮助,下面来看看怎么打开这个功能。


打开Project的属性窗口,找到C/C++ -> Command Line,

Visual Studio 打印类的内存布局


添加新的选项 /d1 reportAllClassLayout, 编译,这会打印出所有的class的内存布局,

Visual Studio 打印类的内存布局


也可以用选项指定特定的class,如/d1 reportSingleClassLayoutDerived,

Visual Studio 打印类的内存布局


这样就可以来研究类的内存分布了。