Heb weer eens een pointer probleem. Als je naar onderstaande code kijkt dan wordt in de laatste cout statement wel het goede volgnummer weergegeven maar niet het goede OrderNr. Die laatste is altijd de laatste die ingelezen is....
Iemand enig idee?
Laatst was het opgelost door een van jullie hier door een pointer aan te maken in een while loop. Dat doe ik alleen nu dus weer en nu lijkt dat dus niet te werken.
Iemand enig idee?
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| mDistancePtr = new Distance(); mDiGraphPtr = new DiGraph(); f = fopen(filename, "r"); while(!feof(f)) { DEntityPtr mDEntityPtr = new DEntity(Count); mDiGraphPtr->AddNode(mDEntityPtr); Count++; fscanf(f,"%s %s %s %s ",Temp1,Temp2,Temp3, Temp4); mDEntityPtr->mOrderNr = Temp1; mDEntityPtr->mDemand1 = atoi(Temp2); mDEntityPtr->mDemand2 = atoi(Temp3); mDEntityPtr->mOrigineelNr = atoi(Temp4); for(int i = 0; i<mDistancePtr->GetSize() ; i++) { if(mDEntityPtr->mOrigineelNr == mDistancePtr->Origineel[i]) mDEntityPtr->mVolgNr = i; } } cout<<endl; fclose(f); ListIterator <NodePtr> iter (mDiGraphPtr->mNodeList); for(iter.GotoBegin();!iter.AtEnd();iter.GotoNext()) { cout<<iter.GetElement()->GetDEntityPtr()->mVolgNr<<" "<<iter.GetElement()->GetDEntityPtr()->GetOrderNr()<<endl; } } |
Laatst was het opgelost door een van jullie hier door een pointer aan te maken in een while loop. Dat doe ik alleen nu dus weer en nu lijkt dat dus niet te werken.
[ Voor 23% gewijzigd door Lord_T op 20-08-2003 17:05 ]
ja ja... niet iedereen heeft dezelfde kennis... wees daarom ook eens gewillig en geef een antwoord op een vraag ;)