Maybe you should take a look at my
GSHashmap ...
In many cases it can replace "linked lists" and it can be handled much easier.
I use it in my click&point adventure to handle all useable objects (some hundreds) and save their properties over the whole game.
One of many advantages:
You don't need to do something like this:
ENTITY* soldier1;
ENTITY* soldier2;
ENTITY* soldier3;
etc...
ENTITY* soldier100;
You just need one:
You can use this pointer x-times for all your soldiers and store each of them under a unique key in the hashmap. This key can be generated automatically for example in a for-loop just by converting the counter to a string and use this number as key. With those keys you can access your soldiers anytime you want.
Best advantage you from the GSHashmap if you use structs ... with the hashmap you can link entities with structs in a very easy way and you can still access the hashmap even if you change the level.
Regards,
Pegamode.