Hi -
I'm using fusion::map, and I've noticed that if I have:
struct attr0 {}; typedef fusion::pair<attr0, double> Attr0;
struct attr1 {}; typedef fusion::pair<attr1, double> Attr1;
And then:
typedef fusion::map<Attr0> ProfileType1;
typedef fusion::map<Attr0, Attr1> ProfileType2;
When I create N instances of ProfileType2, the process size at runtime is about twice the size of the same process creating N instances of ProfileType1.
No big surprise, I guess, but if I *never* mention the type Attr1 in my code, is there a way to "remove" it at compile time from ProfileType2? I.e. I would want the compilation to remove the parts of the fusion::map that are guaranteed not to be used at runtime, so that I don't spend memory that I will never use. Is that possible?
Thanks a lot!
Frank
fastier@yahoo.com