Undvika Bugs i C ++ Program

Diverse Valdar Hammarström November 1, 2016 0 1
FONT SIZE:
fontsize_dec
fontsize_inc

 Börja inte felsöka koden för att ta bort eller åtminstone tills du förstår alla varningar som genereras under kompilering. Att alla varningar om du ignorerar det gör du inte bra. Om du inte förstår varningen, slå upp det. Vad du inte vet kan skada dig.

 Anta en tydlig och konsekvent kodning stil

 Kryptering på en tydlig och konsekvent stil inte bara förbättrar läsbarheten av programmet, men också resulterar i färre kodningsfel. Kom ihåg, desto mindre makt du har hjärnor att dechiffrera spendera C ++ syntax, ju mer du har, än att tänka på logiken i programmet i den vänstra. En bra kodning stil, kan du göra följande med lätthet:

  •  Skilja klassnamn, objektnamn och titlar
  •  Veta något om objektet baserat på dess namn
  •  Skilja förprocessorn symboler från C ++ symboler
  •  Identifiera C ++ kodblock på samma nivå

 Du behöver också en standardmodul header information om funktioner eller klasser i modulen levererar att bestämma författaren, datum, version av kompilatorn du använder och versionshistorik.

 Slutligen, alla programmerare är involverade i ett projekt använder samma stil. Att försöka dechiffrera ett program med ett lapptäcke av olika kodnings stilar är förvirrande.

 Kommentar din kod som du skriver det

 Du kan undvika fel om du svarar din kod när du skriver i stället för att vänta tills allt fungerar och sedan gå tillbaka och skriva en kommentar. Inte tar dig tid att skriva omfångsrika rubriker och arbetsbeskrivningar senare är förståeligt, men du alltid har tid att lägga till korta kommentarer under skrivandet av koden.

 Korta anmärkningar upplysande. Om de inte gör det, de är inte värda mycket och du bör göra något annat istället. Du behöver allt ljus du kan få när du försöker köra programmet. Om du tittar på en bit kod som du skrev för några dagar sedan, anmärker kort, beskrivande och rakt på sak kan göra en dramatisk bidrag till att hjälpa dig att få göra ut vad det var du försökte göra.

 Dessutom konsekvent kod indrag och namnkonventioner gör koden lättare att förstå. Det är alla mycket trevligt om koden är lätt att läsa när du är klar med det, men det är lika viktigt att koden är lätt att läsa medan du skriver det. Det är då du behöver hjälp.

 I ett steg varje väg åtminstone en gång

 Som programmerare, är det viktigt för dig att förstå vad programmet gör. Ingenting ger dig en bättre känsla för vad som händer under huven än en enda kliva programmet med en bra debugger.

 Utöver detta, om du skriver ett program måste du ibland råvara att räkna ut vad bisarrt beteende. Ingenting ger dig det där bättre än enkel kliva nya funktioner som de kommer i bruk.

 Slutligen, när en funktion är klar och redo att sättas till programmet behöver varje logisk väg som skall färdas. Buggar är mycket lättare att hitta när funktionen undersöks av sig själv i stället för efter det har kastats in i potten med resten av funktionerna - och din uppmärksamhet har gått till nya program utmaningar.

 Undvika överbelastning operatörer

 Annat än att använda de två aktuella I / O-operatörer operator << och operatör >> = operatör och tilldelningsoperatorn, bör du nog vänta överbelastnings operatörer tills du känner dig bekväm med C ++. Även om en bra uppsättning av överbelastad operatörer, användbarhet och läsbarhet av en ny klass, kan öka överbelastning av operatörer är nästan aldrig nödvändigt och kan avsevärt öka dina felsökning elände som en ny programmerare. Du kan få samma effekt genom att definiera och använda lämpliga offentliga medlemsfunktioner i stället.

 Efter C-Plus-Plus Sing've varit för ett par månader, gärna återvända och börja överbelastning operatörer till ditt hjärta innehåll.

 Balans hopp hantering

 Generellt måste tilldela programmerare och släppa heap minne på samma "nivå." Om en delfunktion MyClass :: skapa delar ett block av stackminne och skickar den tillbaka till den som ringer, måste du vara medlem funktion MyClass :: release som minne på heap är tillbaka. Specifikt MyClass :: skapar bör inte ha den nödvändiga överordnade funktion att frigöra minne själv. Detta är verkligen inte att alla problem med minnet - moder funktionen kan glömma att ringa MyClass :: släppt - men det minska risken.

 Använd undantag för att hantera fel

 C ++ undantaget mekanism är utformad för att enkelt och effektivt hantera fel. Nu när denna funktion är standardiserad, bör du använda det. Den resulterande koden lättare att skriva, lättare att läsa och lättare att underhålla. Dessutom har andra programmerare kommit att förvänta sig det - du vill inte göra dem besvikna, skulle du?

 Undvik multipelt arv

 Multipelt arv, som operatör överbelastning, tillägger en annan nivå av komplexitet som du inte behöver ta itu med när du just har börjat. Lyckligtvis kan de flesta verkliga förhållanden att beskrivas genom en enda arv.

 Känn dig fri att ärva flera klasser av kommersiella bibliotek såsom Microsoft MFC klasser. Microsoft har en betydande mängd tid på att sätta upp klasser, och det vet vad den gör.

 När du är bekväm med din nivå av förståelse av C ++, känner experimentera med att sätta upp ett antal olika arvshierarkier. På så sätt kommer du att vara redo när du behöver det.

(0)
(0)