
Stefan Strasser wrote:
I do think however, with the caveat that I don't know how exactly it was reached,
Truth is it was wasn't really decided. It was arrived at as the most expedient solution as to how to vary the serialization. The only alternative proposed was to require that each invocation specify the the attributes of the serialization- tracking. etc. I could see the merit in this - but would lead to a very unwieldly and user unfriendly system.
that it wasn't a good design decision to deduce the semantics of a member from its type. especially with object tracking, where the semantics of a pointer is deduced from the pointee type.
maybe - but no one proposed much alternative at a time. In practice it's worked out pretty well. Most of the traits can be overridden for special cases using a "strong typedef" wrapper class and this has turned out to be necessary only in the most rare of cases. Tracking is the one trait which can't be overridden in this manner and I've considered ways to address that. But it hasn't been high priority because no one has ever asked for it. I would guess that this is the case because those that might have a need for it prefer to write thier own alternative from scratch. Robert Ramey