Julien Blanc wrote:
BOOST_DESCRIBE_STRUCT must be put outside the class definition. BOOST_DESCRIBE_CLASS, on the other hand, must be put inside the class definition. This is typically the "i will always get this wrong" case. Since the library heavily relies on templating and macros, the error messages are arcane to the final user. I would suggest, that, for consistency, BOOST_DESCRIBE_STRUCT should be put inside the class definition as well.
BOOST_DESCRIBE_CLASS goes inside the class definition for two reasons: one,
to be able to access private members; two, to support class templates. You can
do
#include