Je voulais créer une liste d'obets se modifiant facilement et j'ai pensé à cete classe :
J'ai cité toute la classe, mais seule la procédure new_object est problématique. La ligne «list[id] = &Objet(id, sort, x,y);» crée un objet, mais le démolit directement après la fonction. Comment pourrais-je régler ce problème???????????????class List_objets
{
public:
List_objets(int id)
{
list[2000];
}
int get_free_id()
{
int done = 0;
int i = 0;
while(!done && i<2000){if(list_check[i]) {i++;}else {done=true;break; return i;}}
return 0;
}
void new_objet(Object_sort &sort, int x, int y)
{
int id = get_free_id();
list_check[id] = true;
list[id] = &Objet(id, sort, x,y); //******************************pas bien
}
bool list_check[2000];
Objet *list[2000];
} unit_list(1);
Partager