ich mit einem Vektor von Zeigern auf andere Objekte darin, so etwas wie dieses ein Objekt haben:Kann ein nicht neues Objekt gelöscht werden?
class Object {
...
vector<Object*> objlist;
...
};
Nun werden Objekte in diesen beiden Möglichkeiten zur Liste hinzugefügt werden:
Object obj;
obj.objlist.push_back(new Object);
und
Object name;
Object* anon = &name;
obj.objlist.push_back(anon);
Wenn ein Destruktor machen, die einfach ist
~Object {
for (int i = 0; i < objlist.size(); i++) {
delete objlist[i];
objlist[i] = NULL;
}
}
Wird es negative Folgen in Bezug auf sein, wenn es versucht, ein Objekt zu löschen, die nicht mit neuem erstellt wurde?
Ich weiß, dass es mit einem Iterator besser sein könnte, aber "objlist" war ursprünglich und Array und ich bin nicht dazu gekommen, die Schleife zu ändern. –