הנה רעיון שאני לא בטוח שיתאים, אבל
בפרוייקט שעשיתי ב C לפני כמה זמן - היתה לי אותה בעיה - והפתרון היה לשמור את כל האובייקטים ברשימה אחת ובנוסף ליצור מבנה מהיר (HASH TABLE לדוג´) עבור כל סוג אני מניח שאין כמות עצומה של אובייקטים כך שההשפעה על יעילות התכנה מבחינת זכרון לא תהיה משמעותית - ואם אין מ"ס קבוע של אובייקטים (אין הגבלה סבירה) - אפשר להשתמש ב TREE מפה הפתרון פשוט : ברגע שאתה רוצה לבצע פעולה על אחד האובייקטים - אתה מוצא אותו ברשימה ואח"כ במבנה הנוסף - ומתוך המבנה הנוסף - שמכיר את האובייקט - אתה מפעיל את הפונקציה שוב - אני לא יודע אם זה ישים במקרה הזה - אבל אם כן - שמחתי לעזור...
בפרוייקט שעשיתי ב C לפני כמה זמן - היתה לי אותה בעיה - והפתרון היה לשמור את כל האובייקטים ברשימה אחת ובנוסף ליצור מבנה מהיר (HASH TABLE לדוג´) עבור כל סוג אני מניח שאין כמות עצומה של אובייקטים כך שההשפעה על יעילות התכנה מבחינת זכרון לא תהיה משמעותית - ואם אין מ"ס קבוע של אובייקטים (אין הגבלה סבירה) - אפשר להשתמש ב TREE מפה הפתרון פשוט : ברגע שאתה רוצה לבצע פעולה על אחד האובייקטים - אתה מוצא אותו ברשימה ואח"כ במבנה הנוסף - ומתוך המבנה הנוסף - שמכיר את האובייקט - אתה מפעיל את הפונקציה שוב - אני לא יודע אם זה ישים במקרה הזה - אבל אם כן - שמחתי לעזור...