chrigu schrieb:
> Dies generiert die Fehlermeldung: Das generische Typargument für "T"
> kann nicht "bull::Coordinate" sein, es muss ein Werttyp oder ein Handle
> für einen Referenztyp sein.
> Wie könnte ich dieses Problem lösen?
Dazu müsste man erst mal wissen, wie das Template List gemacht ist.
Die Standard C++ Liste kann es nicht sein, denn die heißt std::list mit
einem kleinen l.
Aber abgesehen davon, denke ich, dass deiner Klasse einfach nur ein paar
Member fehlen. Ich denke da zb an einen Default-Konstruktor. Was sonst
noch notwendig ist, könnte man sagen, wenn man das List-Template kennen
würde. Kann natürlich auch sein, dass dieses List-Template der
tatsächliche Müll ist, denn eigentlich sollte sich eine Liste nicht
dafür interssieren, was in ihr gespeichert wird und damit sollte es ihr
egal sein, ob das jetzt ein einzelner int oder eine Klasse oder Pointer
oder ... sind. Ist die Liste richtig geschrieben, dann ist das auch so.
Mein erster Ansatzpunkt wäre an dieser Stelle, das List Template zu
zerpflücken. Alleine schon, weil ich weiß, dass sich eine Liste nicht
darum kümmern soll, wer oder was in ihr gespeichert wird. Der
tatsächlich einzig interessante Fall, ist der Fall, wenn die Liste
Pointer enthält. Dann erhebt sich die Frage: Wer ist für den delete auf
den Objekten hinter den Pointern verantwortlich?