Skip to main content

Hva er duereferanseoperatøren?

Dereference -operatøren er et symbol som brukes i dataprogrammering for å hente en verdi som ligger til en spesifikk minneadresse.Operatøren, vanligvis representert med en stjerne i kildekoden, brukes før en variabel som peker på en minneadresse, eller peker.Noen ganger kalt indireksjonsoperatøren, kan dureferanseoperatøren også brukes når du deklarerer eller initialiserer variabler for å indikere at de er pekere på en datatype og ikke selve datatypen.Når du bestemmer driftsrekkefølgen, har dureference -operatøren forrang over nesten alle standard matematiske operatører.

For å forstå hva dureferanseoperatøren gjør, er det viktig å forstå hvordan datatyper i dataprogrammering fungerer.En variabel i et program kan inneholde en verdi.Mange ganger er dette ganske enkelt et heltall eller en rekke tegn.Andre ganger kan det være en minneadresse som peker på en heltallverdi.Variabler som holder minneadresser kalles pekere.

Når det er nødvendig å tilordne, endre eller hente dataene som er lagret på minneadressen en peker inneholder, må dureferanseoperatøren brukes.Hvis en matematisk operasjon, for eksempel tillegg, blir gjort til en pekervariabel uten å henvise den til den, vil operasjonen bli utført på minneadressen og ikke variabelen som den peker til.Det er tider hvor aritmetiske operasjoner utført på minneadresser kan forbedre effektiviteten, som i tilfelle å tråkke gjennom en matrise, og det er grunnen til at denne funksjonaliteten eksisterer.Når duerferanseoperatøren brukes på en peker, vil alle operasjoner bli utført på dataene som er lagret på minneplassen og ikke selve minneadressen.

Operatøren kan også brukes når du først erklærer en ny variabel.Ved å plassere operatøren mellom variabel -typen og variabelnavnet, vil det indikere at den nye variabelen skal være en peker på en datatype og ikke bare en forekomst av typen.Variabler som er opprettet på denne måten, må initialiseres med en slags minnetildelingsfunksjon, fordi pekeren må settes til et ubrukt minneplassering av Memory Manager programmet bruker.

Det er noen farer som måunngås når du bruker Dereference -operatøren.Spesielt er å forsøke å dereferanse en peker som er null eller udefinert.Pekeren har teknisk sett ikke en minneadresse, så forskjellige feil eller unntak vil bli generert som vil stoppe utførelsen av et program.Null-sikrede versjoner av derferensoperatøren eksisterer som ikke vil forårsake en feil, men disse operatørene har en annen syntaks.