Herr_Dude Skrevet 1. februar 2004 Del Skrevet 1. februar 2004 (endret) Hallo. Sitter her og klør meg i hodet over hvorfor disse linjene kode ikke fungerer. Alltid greit med friske øyne på et problem, men har ingen i nærheten som kan c++ akkurat nå, så da tyr jeg til den generelle befolkning. Nå skal det sies at jeg kompilerte og kjørte under MinGW, så det KAN være derfor. Men er det noe jeg ikke ser her: int nPoints = 25; Point2D **source; // av en eller annen grunn klikker nå denne linjen *source = new Point2D [ nPoints ]; ( koden er modifisert noe får å utnytte plassen her. deklareringen er i h filen, tilordning av variablene er i en funksjon i .cc filen ) Edit: kompilerer greit. Kjørefeil. Endret 1. februar 2004 av Herr_Dude Lenke til kommentar
A_N_K Skrevet 1. februar 2004 Del Skrevet 1. februar 2004 Greit nok, source i seg selv peker bare på søppel. Dvs. at du prøver å dereferere pekeren som source peker på, men source peker på en tilfeldig adresse. Dermed vil du sannsynligvis skrive til uallokert minne. Det er kanskje ikke åpenbart, men det må også allokeres minne for å holde pekere (32 bit som regel). Lenke til kommentar
Herr_Dude Skrevet 1. februar 2004 Forfatter Del Skrevet 1. februar 2004 Poenget er å deklarere en tabell av pekere av typen Point2D. Deklareringen skal gjøres ved kjøring, dvs nPoints er variabel og gis som input ( selv om det ikke ser slik ut av eksempelsnutten jeg har gitt her ). Trodde dette var måten å gjøre det på. Hvordan er det man deklarerer størrelsen på en definert tabell av pekere ved kjøring da ? Lenke til kommentar
A_N_K Skrevet 2. februar 2004 Del Skrevet 2. februar 2004 (endret) Du vil opprette en tabell av pekere? Det er i alle fall ikke det du gjør nå, du oppretter en tabell av objekter (objektene må jo opprettes en gang uansett). Jeg ville heller brukt std::vector<Point2D *> (hvis du virkelig vil ha en tabell til pekere da, og ikke til konkrete objekter), men da må du også huske å deallokere de enkelte objektene som tabellen peker på (vector vil kun deallokere pekerne). Endret 2. februar 2004 av A_N_K Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå