Hi! I'm converting Vb6 project to Gambas. And because Gambas doesn't have UDT/structures, I have to rethink some of the code (not necessary bad thing). I'm converting some parts of the code to object oriented way. But I run into some problems with it. I have module which contains mainly global arrays and global UDT arrays. That module describe items, every item is identified by index number. Like this (vb6 code): Global Alive(Max_Number_Of_Items) as boolean
So if I want to know if item 2 is alive, I'll write: IF Alive[2] = TRUE THEN Problem is in identification, items have to know who is who. Old array based code is something like this: IF Alive[Who] = TRUE THEN ComWith = CommunicateWith[Who] IF Alive[ComWith] = TRUE THEN WhereX[ComWith] = ... WhereY[ComWith] = ... ... And when I want to save/load items to/from file, I use Id <--> Index translation function which translates CommunicateWith array with ID array. But that is way too slow to use at normal execution, it is useful only on file operations. If I convert these items to objects, there is not much point to use Alive array (etc.), I'll just remove dead items and add new one only when needed. But that creates problem with identification, since I can't use index numbers anymore! And looping every item to see if it have right Id number (that matches to CommunicateWith[WhoEverAsk]) is way too slow (like in Id <--> Index translation function). Slow because there are many(!) items, and every item should be checked against every item! So, any ideas how to implement fast identification between objects? Other words, how to translate Id to Index without looping? I'm trying to learn object oriented style and right now it's very difficult to stretch my brains around it... Jussi ------------------------------------------------------------------------------ SF.Net email is Sponsored by MIX09, March 18-20, 2009 in Las Vegas, Nevada. The future of the web can't happen without you. Join us at MIX09 to help pave the way to the Next Web now. Learn more and register at http://ad.doubleclick.net/clk;208669438;13503038;i?http://2009.visitmix.com/ _______________________________________________ Gambas-user mailing list Gambas-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/gambas-user