#include #include #include struct Object1 { void *m_pointer; uint32_t m_a; uint32_t m_b; }; struct Object2 { uint32_t m_a; void *m_pointer; uint32_t m_b; }; struct Object3 { uint32_t m_a; uint32_t m_b; void *m_pointer; }; int main (int argc, char *argv []) { std::cout << "sizeof (Object1): " << sizeof (Object1) << std::endl; std::cout << "offsetof (Object1, m_pointer): " << offsetof (Object1, m_pointer) << std::endl; std::cout << "sizeof (Object2): " << sizeof (Object2) << std::endl; std::cout << "offsetof (Object2, m_pointer): " << offsetof (Object2, m_pointer) << std::endl; std::cout << "sizeof (Object3): " << sizeof (Object3) << std::endl; std::cout << "offsetof (Object3, m_pointer): " << offsetof (Object3, m_pointer) << std::endl; }