Sintakse:
Funkcijas “Svētīt” sintakse ir dota tālāk. Šo funkciju var izmantot ar vienu argumentu vai diviem argumentiem. Parasti šī funkcija tiek izmantota ar diviem argumentiem, kur pirmais arguments ir atsauces mainīgais, bet otrais arguments ir klases nosaukums, uz kuru atsaucas pirmais arguments. Ja to izmanto ar vienu argumenta vērtību, atsauces mainīgais attiecas uz pašreizējo pakotni.
svētīt ref
vai
svētīt ref , klases nosaukums
Dažādi funkcijas Bless() piemēri
Funkcijas bless() izmantošana dažādos veidos ir parādīta šajā apmācības daļā.
1. piemērs: Vienkāršās klases un objekta izmantošana
Šajā piemērā pakotne ar nosaukumu “Grāmata” satur apakšprogrammu, kas darbojas kā klases konstruktora metode. Šeit funkcija “bless” tiek izmantota, lai saistītu mainīgos ar klases nosaukumu, kas tiek nodrošināts metodes Init () izsaukšanas laikā.
#!/usr/bin/perl
izmantojiet stingru ;
izmantot brīdinājumus ;
izmantot 5.34.0 ;
#Definējiet paketi
iepakojuma grāmata ;
#Definējiet konstruktoru
zem Init
{
#Inicializējiet klases nosaukumu
mans $className = maiņa ;
#Inicializējiet mainīgos
mani $ mainīgie = {
'BookName' => maiņa ,
'Autora vārds' => maiņa ,
'PublishedYear' => maiņa ,
'Cena' => maiņa
} ;
#Iestatiet atsauci ar atsauci
svētīt $mainīgos , $className ;
#Atgriezt atsauces mainīgo
atgriezties $mainīgie lielumi ;
}
#Izveidojiet klases objektu
mana $bookObj = Init grāmata ( 'Mācīties Perlu' , 'Rendāls L. Švarcs' , 1993. gads , Četri, pieci ) ;
#Izdrukājiet klases mainīgo vērtības
saki 'Grāmatas informācija:' ;
saki ' \n Grāmatas nosaukums: $bookObj->{'BookName'}' ;
saki 'Autora vārds: $bookObj->{'AuthorName'}' ;
saki 'Izdošanas gads: $bookObj->{'PublishedYear'}' ;
saki 'Cena: \$ $bookObj->{'Price'}' ;
Izvade:
Pēc skripta izpildes tiek parādīta šāda izvade:
2. piemērs. Klases un objekta izmantošana ar vairākām metodēm
Šajā piemērā pakotnē ar nosaukumu “Produkti” ir divas metodes. Viena no metodēm ir Init (), ko izmanto, lai inicializētu nepieciešamos mainīgos un atsauktos uz mainīgajiem ar klases nosaukumu, izmantojot funkciju “bless”. Lai aprēķinātu produkta atlaides cenu, tiek izmantota cita metode, kas ir aprēķins_cena().
#!/usr/bin/perlizmantojiet stingru ;
izmantot brīdinājumus ;
izmantot 5.34.0 ;
#Definējiet paketi
iepakojums Produkts ;
mani $ mainīgie = { } ;
#Definējiet konstruktoru
zem Init
{
#Inicializējiet klases nosaukumu
mans $className = maiņa ;
#Inicializējiet mainīgos
$mainīgie lielumi = {
'ID' => maiņa ,
'vārds' => maiņa ,
'Cena' => maiņa
} ;
#Iestatiet atsauci ar atsauci
svētīt $mainīgos , $className ;
#Atgriezt atsauces mainīgo
atgriezties $mainīgie lielumi ;
}
#Deklarēt metodi atlaides cenas aprēķināšanai
apakšaprēķināt_cenu
{
mana $ atlaides_cena = $mainīgie- > { 'Cena' } - $mainīgie- > { 'Cena' } * 0.1 ;
saki 'Cena ar atlaidi: \$ $ atlaide_cena' ;
}
#Izveidojiet klases objektu
mans $proObj = Sākotnējais produkts ( '6745' , 'Dell monitors' , piecdesmit ) ;
#Izdrukājiet klases mainīgo vērtības
saki 'Informācija par produktu pēc 10 \% atlaide: ' ;
saki ' \n Id: $proObj->{'Id'}' ;
saki 'Vārds: $proObj->{'Name'}' ;
saki 'Sākotnējā cena: \$ $proObj->{'Price'}' ;
#Izsauciet objekta metodi
$proObj- > aprēķināt_cenu ( ) ;
Izvade:
Pēc skripta izpildes tiek parādīta šāda izvade:
3. piemērs. Klases izmantošana, izveidojot moduli
Šajā piemērā lietotāja definētais Perl modulis tiek izveidots atsevišķā failā ar nosaukumu “CalPower.pm”, kurā tiek izmantota funkcija “bless”. Izveidojiet šo failu ar šādu Perl skriptu. Šis modulis aprēķina “x n “ kur “x” un “n” vērtības tiek nodrošinātas no Perl skripta, kurā šis modulis ir importēts.
#!/usr/bin/perlizmantojiet stingru ;
izmantot brīdinājumus ;
izmantot 5.34.0 ;
#Definējiet pakotnes nosaukumu
pakete CalPower ;
#Definējiet konstruktoru
zem Init
{
mans $className = maiņa ;
mans $var =
{
numuru => maiņa ,
jauda => maiņa
} ;
svētīt $var , $className ;
atgriezties $var ;
}
#Definējiet metodi jaudas vērtības aprēķināšanai
sub Aprēķināt
{
mans $var = maiņa ;
mans $ rezultāts = $var- > { 'numurs' } ;
priekš ( mans $i = 1 ; $i < $var- > { 'spēks' } ; $i++ )
{
$rezultāts = $var- > { 'numurs' } * $rezultāts ;
}
atgriezties $rezultāts ;
}
Izveidojiet Perl failu ar šādu skriptu, kurā tiek importēts modulis “CalPower”, lai aprēķinātu jaudu, pamatojoties uz ievades vērtību, kas tiek ņemta no lietotāja.
#!/usr/bin/perlizmantojiet stingru ;
izmantot brīdinājumus ;
izmantot 5.34.0 ;
izmantojiet CalPower ;
#Ņemiet bāzes vērtību
drukāt 'Ievadiet x vērtību:' ;
chomp ( mans $x = <> ) ;
#Paņemiet spēku ieleju
drukāt 'Ievadiet n vērtību:' ;
chomp ( mans $n = <> ) ;
#Izveidojiet klases objektu
mans $Obj = Init CalPower ( $x , $n ) ;
#Izdrukājiet aprēķināto jaudas vērtību
drukāt '$x pakāpei $n ir' ;
saki $Obj- > Aprēķināt ( ) ;
Izvade:
Pēc skripta izpildes tiek parādīta šāda izvade:
Secinājums
Funkcijas “svētīt” izmantošana Perl ir parādīta šajā apmācībā, izveidojot pakotni tajā pašā Perl failā un izveidojot moduli citā failā.