NULL oder nicht NULL? dringend



  • Ich glaube, ich bin jetzt total bekloppt, aber wieso geht das hier immer in else? Ich kriege immer "null, setze auf ...". Das kann doch nicht wahr sein oder? rootVertex wird im Konstruktor auf NULL gesetzt, aber beim ersten Mal else doch durch rootVertex = vertex auf irgendwas ungleich NULL gesetzt (vertex ist auf keinen Fall NULL- ich hab's geprüft).

    class Graph ...
      void insVertex(Vertex<T>* vertex) {
      	  Base* tempVertex;
    	  tempVertex = rootVertex;
    	  cout << tempVertex;
    	  if (tempVertex != NULL) {
    		  cout << "nicht null";
    	  } else {
    		  cout << "null, setze neu auf " << vertex;
    		  rootVertex = vertex;
    	  }
      }
    }
    

    Es ist übrigens

    template<class T> class Vertex : public Base
    

    rootVertex ist übrigens eine private Variable von Graph.



  • dumme frage: der vertex den du übergibst, der ist schon != NULL oder? der code müsste nämlich denk ich in ordnung sein



  • ja, vertex ist ungleich NULL. Das kann doch nicht wahr sein oder?



  • marcoow schrieb:

    rootVertex wird im Konstruktor auf NULL gesetzt

    Also jedes Mal, wenn du ein Vertex erzeugst?!

    Stefan.


Log in to reply