whycomputer.com >> Datornätverk >  >> Programvara

Fördelar och nackdelar med pekare

Beroende på vem du frågar, tips är antingen en välsignelse eller en förbannelse. Pekare tillhandahåller en mekanism för att direkt komma åt och ändra objekt och kod i minnet. Pekare används i många programmeringsspråk för att manipulera teckensträngar, överföra parametrar till funktioner, hantering av matriser av data, och skapa länkade listor och andra komplexa datastrukturer. Medan tips ger dig en stor flexibilitet för att hantera minne och optimera algoritmer, det finns nackdelar. Att lära sig att använda pekare är svårt för många programmerare, och felsökning av pekarproblem är utmanande.

Optimering

Pekare ger en prestandafördel genom att du får åtkomst till datorns minne direkt. I ett datorprogram, det snabbaste sättet att komma åt och ändra ett objekt är att direkt komma åt det fysiska minnet där objektet är lagrat. Denna teknik används vanligtvis för att optimera algoritmer som kräver frekvent eller repetitiv åtkomst till stora mängder data.

säkerhet

Direkt åtkomst till minne innebär att du kan göra saker som du kanske inte borde. Beroende på språk, kompilatorn och datorplattformen, du kan oavsiktligt (eller avsiktligt) komma åt minne som inte är ditt att komma åt. Som ett resultat, du kan skriva över kritiskt minne, ändra koden för en applikation som körs, eller få din ansökan eller en annan applikation att uppträda eller avsluta oväntat. Ett vanligt fel är att köra förbi slutet av en array, åtkomst till minnet bortom slutet av det utrymme som tilldelats för den matrisen.

Minneshantering

Att hantera minnesanvändning i en applikation med hjälp av pekare erbjuder flexibilitet men är också ett jobb. Genom att tilldela och fördela minne efter behov under körtiden kan du skapa stora objekt, såsom matriser, snabbt och omedelbart frigöra minnet när det inte längre behövs. Dock, Det är också enkelt att skapa minnesläckor genom att tilldela en pekare utan att frigöra minnet som den pekade på först. Skräpinsamling är ditt ansvar.

Funktionsparametrar

Funktioner kan endast returnera ett värde, men de kan ta flera parametrar. Genom att ge pekare till variabler som parametrar, en funktion kan användas för att ställa in värdena för dessa variabler, och de nya värdena kvarstår när funktionen återvänder. Att kunna ställa in värdet på flera variabler samtidigt med ett enda funktionssamtal är rent och effektivt. Dock, Det kan vara lite förvirrande att läsa eftersom du inte kan se om de variabler som skickas in kommer att ändras eller inte bara genom att titta på funktionsanropet. Du måste titta på funktionsdokumentationen för att lära dig hur funktionen beter sig.

Funktionspekare

Pekare är inte bara för objekt i minnet; de kan också användas för funktioner, så att en funktion kan överföras som en parameter till en annan funktion. En funktionspekare kan tilldelas adressen till en av ett val av funktioner så att pekaren fungerar som ett slags alias. Objektorienterade programmeringsspråk har eliminerat behovet av funktionspekare med arv och polymorfism.

Pekarförvirring

Pekare är ett förvirrande ämne för många programmerare, särskilt de som har erfarenhet av att använda språk som inte har pekare och direkt minnesåtkomst. Dock, uthållighet leder snabbt till behärskning av tips. Pekare åtföljs ofta av oklar syntax. Konsekventa konventioner om namngivning av variabler kan hjälpa din kod att bli mer läsbar. Till exempel, vanliga namngivningskonventioner inkluderar att använda "p_" eller "ptr_" som prefix till pekarvariabelnamn.

Tips

Använd alltid tilldelningsfunktionerna från språket för tilldelningsminne, och kontrollera att minnet tilldelades innan du använder det. Var försiktig med minneshantering, och frigör minne när det inte längre behövs. Om du tilldelar en pekare till en ny minnesadress, se till att det gamla minnet frigörs eller tilldelas en annan pekare. Se till att pekare som skapas i funktioner tilldelas äganderätt till det överordnade omfånget eller att minnet fördelas innan du lämnar funktionen.


URL:https://sv.whycomputer.com/programvara/1014001239.html

Programvara
  • Fördelar och nackdelar med internetlagring

    Gör en internetsökning efter Internetlagring eller molnlagring så får du sidor med listor för webbplatser som erbjuder online -lagring, gratis och mot en avgift. Google Drive, Microsoft OneDrive och Dropbox är bara tre exempel. Innan du laddar upp semesterbilder, affärsdokument och din bröllopsvideo

  • Fördelar och nackdelar med bredbandssatellit

    Satellitbredband eller satellitinternet är en typ av internetanslutning som tillhandahålls av en satellit istället för landbaserade DSL-kablar, uppringda anslutningar eller andra kabeltjänster. Denna typ av bredband är ansluten till en nätverkstjänst och kan tillhandahålla liknande internetteknik ti

  • Fördelar och nackdelar med mobilt internet

    Under de senaste åren, många mobiltelefoner har blivit tillgängliga som gör det möjligt för användare att komma åt internet medan de är på resande fot. Detta mobila internet aktiveras via teknik, t.ex. WiFi (Wireless Local Area Network) och WAP (Wireless Access Protocol). De senaste siffrorna från a

Datornätverk © https://sv.whycomputer.com