Hello everybody.

What's the best practice or more efficient way to deal, in D, with lots of small objects? My problem is this: I have a small control, ListView. This control can have hundreds (and theoretically thousands) of items (ListViewItem instances, to be precise). And, in turn each one of this ListViewItems can own sub-items (ListViewSubItem instances), effectively creating an humongous quantity of small objects.

Should I just go and create all of those items as classes? I have the feeling that this not very efficient (a lot of small heap allocations). There's also the possibility of make them structs. But then I would have the issue of passing value objects in methods and losing whatever change I made (because I would be modifying a copy of the original). To solve this I could make an internal, Impl structure, and then use reference counting to manage the copies and to make effective all the item modification across all copies. But then I would be where I started: doing tons of heap allocations.

So, how should I deal with this issue?

Thanks.

Yao G.

Reply via email to