Coding med konstanter är det praxis att använda konstanter för att hålla platsen för en abstrakt , fast variabel som inte kan definieras genom grundläggande datatyper, t.ex. booleska eller enheter . Tänk dig till exempel att du skriver ett schackprogram . Medan antalet pjäser på brädet kan , när som helst , lätt representerade med ett positivt tal , den nuvarande styrelsen inte kan. Tilldela slumpmässiga värden 0 , 1 och 2 att vara konstant variabler NONE , CHECK , och CHECKMATE skulle vara ett klassiskt fall av ständiga kodning . Variabeln hålls konstant eftersom värdena är rent föreställande och ändras inte under hela programmet . Tydlighet
Alla programmerare , bra eller dåligt, kommer någon gång förväxlas med en bit kod . Använda konstanter kan hjälpa till att förhindra några av de värsta fallen genom att klargöra innebörden av koden . Ingen vill spendera timmar att analysera en loop som börjar med " om status == 3 " bara för att lista ut vad " 3 " betyder , speciellt inte om det finns fler slingor inom vilka säger " om färg == true " och " , om chessPiece == 5 " ! Tydlighet är särskilt viktigt för långa projekt , eftersom det kan vara svårt att komma ihåg även den kod du skrev själv ibland .
Convenience
Deklarera konstanter förväg tenderar att vara mer praktiskt i det långa loppet , särskilt om det finns många av dem . Anta att du upptäcker att en eller flera av dina konstanter kollidera med varandra och måste ändras . Att gå igenom och förändras varje användning av " 2 " till " 3 " är tröttsamt och kan orsaka fler fel ( detta kallas kod gruvdrift ) , men att ändra en enda förklaring av " int const CHECKMATE = 2 " till " int const CHECKMATE = 3 " är enkel och lätt .
felkontroll
den största fördelen med konstanta kodning är att många fel kommer att fångas av kompilatorn istället anställer stor förödelse vid körning . Viktigast förhindrar konstant typkontroll framtida programmerare från att komma tillsammans och tilldela nya värden till variabler som inte ska ändras . Små fel som stavfel , också tenderar att vara mindre av en huvudvärk . ( Det är ganska svårt att av misstag skriva " CHECK " i stället för " NONE " ! )
Prestanda
Använda konstanter i förekommande fall kan också hjälpa din kod körs snabbare , även om detta till stor del beror på den specifika kompilator och språk som används. Om en konstant behandlas som ett fast värde snarare än en variabel , till exempel , kan kompilatorn lägger i färre instruktioner vid körning . I vissa fall konstanter kommer att lagras i snabbare laddning minne. Typiskt dock prestandaförbättringar från konstanter är minimala och kommer inte att göra mycket av en skillnad .