Hjem Personlig finansiering Undgå fejl i dit C ++-program - dummies

Undgå fejl i dit C ++-program - dummies

Indholdsfortegnelse:

Video: Guide: Undgå fejl når du laver 3D afstøbning med alginat og gips 2024

Video: Guide: Undgå fejl når du laver 3D afstøbning med alginat og gips 2024
Anonim

Start ikke debugging din kode, før du fjerner eller i det mindste forstår alle de advarsler, der genereres under kompilering. Aktiverer alle advarselsmeddelelser, hvis du ignorerer dem, gør du det ikke godt. Hvis du ikke forstår advarslen, skal du kigge op. Hvad du ikke kender vil skade dig.

Vedtag en klar og ensartet kodestil

Kodning i en klar og ensartet stil forbedrer ikke blot læsbarheden af ​​programmet, men resulterer også i færre kodningsfejl. Husk, jo mindre hjernekraft du er nødt til at bruge til at dechiffrere C ++-syntaks, desto mere har du forladt til at tænke på logikken i programmet ved hånden. En god kodestil gør det muligt at gøre følgende med lethed:

  • Differentiate klassenavne, objektnavne og funktionsnavne
  • Kend noget om objektet baseret på dets navn
  • Differentiate preprocessorsymboler fra C ++-symboler (det vil sige #definerede objekter skal skille sig ud)
  • Identificer blokke af C ++-kode på samme niveau (dette er resultatet af ensartet indrykning)

Desuden skal du oprette en standardmoduloverskrift, der indeholder oplysninger om funktionerne eller klasserne i modulet, forfatteren (formodentlig det er du), datoen, den version af kompilatoren du bruger og en ændringshistorik.

Endelig skal alle programmører involveret i et enkelt projekt bruge samme stil. At forsøge at dechiffrere et program med et lappeklip af forskellige kodningsstile er forvirrende.

Kommenter din kode, mens du skriver den.

Du kan undgå fejl, hvis du kommenterer din kode, mens du skriver den i stedet for at vente, indtil alt fungerer, og derefter gå tilbage og tilføj kommentarer. Det tager ikke tid at skrive voluminøse overskrifter og funktionsbeskrivelser til senere, men du har altid tid til at tilføje korte kommentarer, mens du skriver koden.

Korte kommentarer skal være oplysende. Hvis de ikke er det, er de ikke meget værd, og du skal gøre noget andet i stedet. Du har brug for al den oplysning, du kan få, mens du forsøger at få dit program til at fungere. Når du kigger på et stykke kode, du skrev for et par dage siden, kan kommentarer, der er korte, beskrivende og til det punkt, bidrage dramatisk til at hjælpe dig med at finde ud af, hvad det var, du forsøgte at gøre.

Hertil kommer, at ensartede kodeindrykning og navngivningskonventioner gør koden lettere at forstå. Det er meget godt, når koden er let at læse, efter at du er færdig med det, men det er lige så vigtigt, at koden er let at læse, mens du skriver den. Det er, når du har brug for hjælpen.

Enkelt trin hver vej mindst en gang

Som programmør er det vigtigt for dig at forstå, hvad dit program gør. Intet giver dig en bedre følelse af hvad der foregår under emhætten end at single-step programmet med en god debugger. (Debuggerne indgår i IDE for interaktive kompilatorer fungerer fint.)

Ud over det, når du skriver et program, har du nogle gange brug for råmateriale til at finde ud af nogle bizarre adfærd. Intet giver dig det materiale bedre end single-step nye funktioner, som de kommer i brug.

Endelig, når en funktion er færdig og klar til at blive tilføjet til programmet, skal hver logisk vej rejst mindst én gang. Fejl er meget nemmere at finde, når funktionen undersøges af sig selv snarere end efter at den er blevet kastet i puljen med resten af ​​funktionerne - og din opmærksomhed er gået videre til nye programmeringsudfordringer.

Undgå overbelastning af operatører

Bortset fra at bruge operatøren operatør 2 (I) operatør << () og operatør >> () og operatøroperatøren = (), skal du formentlig holde offloading operatører, indtil du føler dig komfortabel med C ++. Selv om et godt sæt overbelastede operatører kan øge nytteværdien og læsbarheden af ​​en ny klasse, er overbelastning operatører (bortset fra de tre lige opført) næsten aldrig nødvendige, og det kan betyde væsentligt for din debugging woes som ny programmør. Du kan få samme effekt ved at definere og bruge de rette offentlige medlemsfunktioner i stedet.

Når du har været C-Plus-Plussing i et par måneder, er du velkommen til at vende tilbage og begynde at overbelaste operatørerne til dit hjertes indhold.

Balance heap handling Generelt skal programmører allokere og frigive hoophukommelse på samme niveau. "Hvis en medlemsfunktion MyClass:: create () tildeler en blok af hukommelse og returnerer den til opkalderen, så skal der være en medlemsfunktion MyClass:: release () at returnerer hukommelsen til bunken. Konkret MyClass:: create () skal ikke kræve, at moderfunktionen frigiver selve hukommelsen. Dette undgår helt sikkert ikke alle hukommelsesproblemer - forældrefunktionen kan glemme at kalde MyClass:: release ()

- men det mindsker muligheden noget.

Brug undtagelser til at håndtere fejl

Undtagelsesmekanismen i C ++ er designet til at håndtere fejl bekvemt og effektivt. Nu, da denne funktion er standardiseret, skal du bruge den. Den resulterende kode er lettere at skrive, lettere at læse og lettere at vedligeholde. Desuden er andre programmerere kommet til at forvente det - du vil ikke skuffe dem, ville du?

Undgå multipel arv

Flere arv, ligesom operatør overbelastning, tilføjer et andet niveau af kompleksitet, som du ikke behøver at håndtere, når du lige er begyndt. Heldigvis kan de fleste virkelige relationer beskrives med en enkelt arv.

Du er velkommen til at bruge flere arvelige klasser fra kommercielle biblioteker, som f.eks. Microsoft MFC-klasserne.Microsoft har brugt en betydelig mængde tid på at oprette sine klasser, og det ved hvad det gør.

Når du har det godt med dit forståelsesniveau for C ++, skal du eksperimentere med at oprette nogle flere arvshierarkier. På den måde vil du være klar, hvis du har brug for det.

Undgå fejl i dit C ++-program - dummies

Valg af editor

Routingprotokollvalgskriterier - dummies

Routingprotokollvalgskriterier - dummies

Folk bruger to grundlæggende metoder til klassificering af ruteprotokoller - hvor de bruges og af hvordan de beregner routing. Du kan se, hvordan du vælger protokoller baseret på, hvor du planlægger at bruge dem, måden protokollen håndterer data på, og hvordan din router vælger hvilken protokol der skal bruges, når mere end en ...

Indstilling af Cisco Device Timeouts - dummies

Indstilling af Cisco Device Timeouts - dummies

Uden at indstille timeout-indstillinger for Cisco Device Privileged EXEC-tilstand, dine sessioner forbliver åbne på ubestemt tid. Dette er især farligt for konsolporten. Uden timeout parametre aktiveret, hvis administratoren ikke logger ud, har en indtrenger adgang og ingen problemer får forhøjede tilladelser. For at undgå denne potentielt farlige situation behøver du kun skrive a ...

Router Ethernet-interfacekonfiguration - dummies

Router Ethernet-interfacekonfiguration - dummies

Du starter processen med at konfigurere router Ethernet-grænseflader ved at foretage en fysisk forbindelse til din router. Når du har etableret forbindelsen, kan du fortsætte med den grundlæggende konfiguration af Ethernet-, Fast Ethernet- eller Gigabit Ethernet-forbindelser. Tilslutning til din router For at starte din konfiguration skal du oprette forbindelse til din router og komme ind i ...

Valg af editor

Med fokus på nogle hurtige løsninger til fotofile - dummier

Med fokus på nogle hurtige løsninger til fotofile - dummier

På trods af alle kameraproducenters forsøg på at gør fotografering idiotsikker, vi laver alle stadig mindre end perfekte billeder. Nogle gange er vi problemet - vi er for tætte eller for langt væk, eller kan ikke finde ud af, hvordan du bruger kameraets tåbebeskyttelsesfunktioner. Nogle gange er problemet, at virkeligheden nøjagtigt nægter at overholde vores forventninger: Himlen er ...

Lær at kende dine Manga Studio Layer Typer - Dummies

Lær at kende dine Manga Studio Layer Typer - Dummies

Manga Studio giver et udvalg af lag typer til brug i dit arbejde. Når du lærer at forstå og forstå, hvordan lag fungerer, vil du spekulere på, hvordan du nogensinde har arbejdet uden dem. Her er en introduktion til, hvad Manga Studio har til opbevaring for dig i sin lag lineup: Raster Layer: Dette er det grundlæggende ...

Få dit mobilwebsted tildelt på sociale bogmærker - dummies

Få dit mobilwebsted tildelt på sociale bogmærker - dummies

Populariteten af ​​websider med antallet af stemmer, de får. Resultatet er, at disse websteder er gode ressourcer til folk, der ønsker at holde øje med, hvad der er populært online. De fleste tilbyder speciel software, der gør det nemt for alle at stemme på et websted. Få dit websted opført ...

Valg af editor

Automatisk opdatering af din journal i Outlook 2000 - dummies

Automatisk opdatering af din journal i Outlook 2000 - dummies

Stardat 2001: På Star Trek, Virksomheden gør trofast daglige poster i kaptajnens log. Kaptajnen registrerer oplysninger om de planeter, besætningen har udforsket, udlændinge, de har kæmpet, og de bizarre fænomener, de har observeret ud i det dybe rum, hvor ingen er gået før! Nu er det din tur. Bare ...

Slet og gendan kontakter i Outlook - dummies

Slet og gendan kontakter i Outlook - dummies

Med Outlook, du behøver ikke at rive sider ud af en papir adressebog for at slippe af med en persons oplysninger; bare slet kontakten. Slettede kontakter går til mappen Slette emner i Outlook, indtil næste gang du tømmer mappen Slette elementer, så du kan hente dem derfra, hvis du laver ...