I Perl programmering , skyddar " strikt " nyckelordet mot osäkra uppgifter konstruktioner . Det förändrar en del av kodens krav och instruerar tolken att leta efter vissa andra sökord . Använda strikta förklaringar hjälper ditt program för att bättre förstå dina avsikter , t.ex. om du menar att använda en subrutin för att tilldela värden till en variabel , men glömmer att definiera sub . I programmet kan du ange strikt förklaring av variabler , referenser , subrutiner , eller alla av ovanstående . Du kan också slå på strikt förklaring någonstans inom programmet med alternativet "Använd strikt " nyckelord och stänga av den senare med hjälp av " inga strikta " sökord . Instruktioner
1
Öppna ett Perl programfil . Skriv följande kod :
$ myVar = " något värde. " ;
Print $ myvar ,
Observera att den första variabeln använder en huvudstad " V " och den andra använder en liten " v. " Denna kod genererar inte ett fel , men det gör faktiskt inte ut någonting på skärmen . Eftersom Perl variabler är skiftlägeskänsliga , tycker programmet är dessa två olika variabler , varav det andra inte har ett värde . Om du ändrar den här andra variabeln " $ myVar , " kommer programmet att skriva ut dess värde till skärmen
2
bort de tidigare linjerna och skriv följande kod : .
Användning strikt ;
$ myVar = " något värde. " ;
print $ myVar ,
Dessa rader skapar två run - time fel trots att variablerna har samma namn , de används två gånger . Skriva " använd strikt " krafter uttrycklig förklaring av alla variabler , referenser och subrutiner
3
bort de tidigare linjerna och skriv följande kod : .
Använder strikta " Vars " ;
mina $ myvar = " något värde . " ;
print $ myVar ,
den första raden anger att programmet endast kräver deklaration av variabler , men inte referenser eller subrutiner . Den " min " nyckelordet deklarerar lokala variabler . Koden i det här exemplet fungerar precis som du vill att det ska
4
bort de tidigare linjerna och skriv följande kod :
använda strikt ,
min $ . myVar = " något värde. " ;
print $ myVar ,
inga strikta " Vars " ,
$ MyVar2 = " några nya värdet . " ;
skriva ut $ MyVar2 ,
första raden kräver deklaration av variabler , referenser och subrutiner . Den fjärde raden stoppar programmet från att kräva strikt deklaration för variabler endast . Detta gör att $ MyVar2 variabel som ska användas utan att deklarera det
5
bort de tidigare linjerna och skriv följande kod :
använder strikta " refs " ,
< p . > $ myVar = " något värde. " ;
$ ref = " myVar ";
print $ $ ref ;
Observera att det här exemplet anger endast att använda strikta referenser , vilket betyder att det är okej att inte deklarera variabeln här . Om du bara använt " använd strikt " istället , skulle du behöva använda " min " nyckelordet framför både $ myVar och $ ref att förklara dem . Däremot genererar den tredje linjen fortfarande ett fel eftersom du försökt att använda $ ref som en skalär referens
6
bort de tidigare linjerna och skriv följande kod : .
Använder strikt " refs " ;
$ myVar = " Några value "; .
$ ref = \\ $ myVar ,
print $ $ ref ;
tredje linje i det här exemplet används backslash att förklara hänvisningen till $ myVar variabeln , vilket gör att du kan använda den utan att generera ett fel
7
bort de tidigare linjerna och skriv följande kod : .
$ myVar = mySub ;
print $ myVar ,
p Om " mySub " är tänkt att vara någon subrutin som du har ännu att definiera , tilldelar Perl " mySub " som en sträng värde till $ myVar och utskrifter som ord på skärmen
8
radera tidigare linjerna och skriv följande kod :
använder strikta " subs " ,
. $ myVar = mySub ;
print $ myVar ,
första raden kräver subrutiner som ska deklareras . Om du har kodat " mySub " tidigare i programmet , är returvärdet från den tilldelade $ myVar , annars en run -time fel genereras .