004
01.06.2004, 23:16 Uhr
ao
(Operator)
|
Was du da gemacht hast, könnte ins Auge gehen. Ich vermute mal, dein Code sieht etwa so aus:
C++: |
const struct CSearchTreeBinInt::Node * GetNode (); // Deklaration, so oder aehnlich Print (GetNode ()); // hier kommt der Fehler
|
und du hast den Fehler wegbekommen, indem du das const in der GetNode()-Deklaration entfernt hast. Damit ist das, was GetNode liefert, nicht mehr zwangsweise konstant, und jemand könnte legalerweise das, was er von GetNode bekommt, verändern oder gar löschen, was den SearchTree bei nächster Gelegenheit zum Absturz bringen könnte. Besser wäre es wahrscheinlich, die Print-Methode so zu deklarieren:
C++: |
void Print (const Node * pNode) const;
|
Damit wäre das Problem auch gelöst, aber auf der sicheren Seite, und wenn Print () wirklich nur druckt, schadet es auch nicht, wenn das zu druckende Objekt const reingereicht wird. |