Is there a way—much like viewing the result of preprocessing with gcc -E
—to see what my objects look like once compiled into object files?
I am talking about GCC, but a solution including MSVC would be fine.
For Visual C++:
I finally managed to dig up the (well-hidden!) undocumented compiler flags that MSVC++ supports using information from here and here. Here they are:
/d1reportSingleClassLayoutXXX
/d1reportAllClassLayout
(replace XXX
with the class name)
For GCC compiled executables, checkout Pahole. It will show you how the compiler laid out your structs/classes and whether or not they have "holes" in them. Holes are padding due to memory alignment rules.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With