Gå til innhold

pointers: Modified after it was freed.


Anbefalte innlegg

Fortsatt denne feilkoden:

First-chance exception at 0x0133ed89 in TTTTT.exe: 0xC0000005: Access violation reading location 0xfeeefefe.

Unhandled exception at 0x772215de in TTTTT.exe: 0xC0000005: Access violation reading location 0xfeeefefe.

 

Får den tredje gangen jeg kjører generatePrimitive().

 

Får denne hvis jeg kommenterer ut linjen som returnerer posisjonen.

 

Unhandled exception at 0x776f15de in OpenFPS.exe: 0xC0000005: Access violation writing location 0xdddddded

 

Funksjonene inne i primitiveobj som setter og returnerer posisjon:

 

void PrimitiveObj::setPos(glm::vec3 in){
boost::mutex::scoped_lock(guard);
position = in;
}
glm::vec3 PrimitiveObj::getPos(){
boost::mutex::scoped_lock(guard);
return position;
}

Endret av Leif.ross
Lenke til kommentar
  • 2 uker senere...
Videoannonse
Annonse

Hei

 

Regner med at "prim" variablen din er deklarert som vector<PrimitiveObj*>. Du har vel da også en rutine som fyller denne opp med objekter ala

 

 
prim.push_back( new PrimitiveObj(x,y,z) );.

 

Forhåpentligvis har du da også en rutine som rydder opp dette ved avslutning av prog, f.eks. slik:

 
for( int i=0; i<prim.size(); i++ )
   delete prim[i];
prim.clear();

 

Hvis dette er tilfelle så må du fjerne delete prop; kallet i slutten av koden din. Å kalle delete prop; er feil selv om du ikke har en rydde rutine, da den bare vil deallokere siste objektet i prim vectoren. Men ut ifra feilmld ser det ut som om du allerede har det.

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...