$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Jean-Francois Bastien (jfbastien_at_[hidden])
Date: 2007-10-02 17:16:23
> It does. It says that members of a struct or class (even
> non-POD ones, which I think is a useless restriction) that
> have no intervening access specifier are stored in memory in
> the same order as they are declared.
[snip]
> What I personally don't understand is why private members -
> or in fact all members of non-PODs - can't always be
> re-ordered. It's not like anyone should ever depend on their
> order. It probably was C compatibility that there were any
> guarantees at all.
Binary compatibility is one reason: you need a guideline that allows
compilers to agree on class layout. It's a pain, but it's necessary if
ever you're to compile a .h in two separate places (and even in two
different compiler versions, to some extent) and have the same class
layout.
JF