On Sunday 25 September 2005 22:02, André Wöbbeking wrote: > > But on the part about private structs, can I safely assume it is NOT > > the norm to start moving member variables into private structs just > > for compilation performance? In fact, I would expect that at each > > opportunity to break BC, we would try to flatten the private structs > > out where convenient. > > The main reason FOR d-pointers is BC. So I don't think that they are > removed. That d-pointers also make the interface cleaner, reduce > dependencies and improve compile time are a nice addons. I am not suggesting the removal of the d-pointers; I understand the role they play in preserving BC. What I am checking/suggesting is that the intent should be to flatten the private structures they point to into the parent structure at convenient (non-BC preserving) times even though that might imply an increase in compile time, because that is surely to be preferred to the run time overhead of two allocations/structures. Otherwise some might think it a good idea to move *all* private members to the private structure pointed to by the d-pointer. Thanks, Shaheed