Is there any trade-offs by using classes objects instead of records in VirtualStringTree?
Regarding: Delphi, VirtualStringTree - classes (objects) instead of records
Does the memory increases or something?
开发者_如何学运维PS: I am using Delphi 2007.
There are two drawbacks to using objects instead of records. First, each object is 4 bytes larger than a record containing the same data would be. (Or 8 bytes, from D2009 on.)
Second, an object has to be created and destroyed; it's not "just there" the way a record is. But from the other question, it looks like your records have to be referred to through pointers anyway, so that's not much of a difference. You'd still have to dynamically allocate your records and free them later.
But if you use an object you gain a lot of extra flexibility, especially the ability to use inheritance and polymorphism. It's definitely worth the extra 4 bytes.
精彩评论