Σύνταξη:
Η σύνταξη της συνάρτησης «ευλογεί» δίνεται παρακάτω. Αυτή η συνάρτηση μπορεί να χρησιμοποιηθεί με ένα όρισμα ή δύο ορίσματα. Κανονικά, αυτή η συνάρτηση χρησιμοποιείται με δύο ορίσματα όπου το πρώτο όρισμα είναι η μεταβλητή αναφοράς και το δεύτερο όρισμα είναι το όνομα της κλάσης που αναφέρεται από το πρώτο όρισμα. Όταν χρησιμοποιείται με μία τιμή ορίσματος, η μεταβλητή αναφοράς αναφέρεται στο τρέχον πακέτο.
ευλογεί αναφ
ή
ευλογεί αναφ , όνομα τάξης
Διαφορετικά παραδείγματα της συνάρτησης Bless().
Οι χρήσεις της συνάρτησης bless() με πολλούς τρόπους παρουσιάζονται σε αυτό το μέρος του σεμιναρίου.
Παράδειγμα 1: Χρήση της Απλής Κλάσης και Αντικειμένου
Σε αυτό το παράδειγμα, το πακέτο με το όνομα 'Book' περιέχει μια υπορουτίνα που λειτουργεί όπως η μέθοδος κατασκευής της κλάσης. Εδώ, η συνάρτηση «bless» χρησιμοποιείται για να συσχετίσει τις μεταβλητές με το όνομα της κλάσης που παρέχεται τη στιγμή της κλήσης της μεθόδου Init().
#!/usr/bin/perl
χρησιμοποιήστε αυστηρά ;
χρήση προειδοποιήσεις ;
χρησιμοποιήστε 5.34.0 ;
#Ορίστε το πακέτο
Βιβλίο πακέτου ;
#Ορίστε τον κατασκευαστή
κάτω από το Init
{
#Αρχικοποιήστε το όνομα της τάξης
$className μου = βάρδια ;
#Αρχικοποιήστε τις μεταβλητές
τις $μεταβλητές μου = {
'Όνομα βιβλίου' => βάρδια ,
'Όνομα συγγραφέα' => βάρδια ,
'Έτος Έκδοσης' => βάρδια ,
'Τιμή' => βάρδια
} ;
#Ρυθμίστε την αναφορά με την αναφορά
ευλογεί $variables , $className ;
#Επιστροφή της μεταβλητής αναφοράς
ΕΠΙΣΤΡΟΦΗ $μεταβλητές ;
}
#Δημιουργήστε ένα αντικείμενο της κλάσης
το $bookObj μου = Init Book ( 'Μαθαίνω Perl' , 'Ράνταλ Λ. Σβαρτς' , 1993 , Τέσσερα πέντε ) ;
#Εκτυπώστε τις τιμές των μεταβλητών κλάσης
λένε 'Λεπτομέρειες βιβλίου:' ;
λένε ' \n Όνομα βιβλίου: $bookObj->{'BookName'}' ;
λένε 'Όνομα συγγραφέα: $bookObj->{'AuthorName'}' ;
λένε 'Έτος Έκδοσης: $bookObj->{'PublishedYear'}' ;
λένε 'Τιμή: \$ $bookObj->{'Τιμή'}' ;
Παραγωγή:
Η ακόλουθη έξοδος εμφανίζεται μετά την εκτέλεση του σεναρίου:
Παράδειγμα 2: Χρήση της κλάσης και του αντικειμένου με πολλαπλές μεθόδους
Σε αυτό το παράδειγμα, το πακέτο με το όνομα 'Προϊόντα' περιέχει δύο μεθόδους. Μια μέθοδος είναι η Init() που χρησιμοποιείται για την προετοιμασία των απαραίτητων μεταβλητών και αναφέρεται στις μεταβλητές με το όνομα της κλάσης χρησιμοποιώντας τη συνάρτηση «bless». Μια άλλη μέθοδος, η οποία είναι τοcal_price() χρησιμοποιείται για τον υπολογισμό της τιμής έκπτωσης του προϊόντος.
#!/usr/bin/perlχρησιμοποιήστε αυστηρά ;
χρήση προειδοποιήσεις ;
χρησιμοποιήστε 5.34.0 ;
#Ορίστε το πακέτο
συσκευασία προϊόντος ;
τις $μεταβλητές μου = { } ;
#Ορίστε τον κατασκευαστή
κάτω από το Init
{
#Αρχικοποιήστε το όνομα της τάξης
$className μου = βάρδια ;
#Αρχικοποιήστε τις μεταβλητές
$μεταβλητές = {
'Ταυτότητα' => βάρδια ,
'Ονομα' => βάρδια ,
'Τιμή' => βάρδια
} ;
#Ρυθμίστε την αναφορά με την αναφορά
ευλογεί $variables , $className ;
#Επιστροφή της μεταβλητής αναφοράς
ΕΠΙΣΤΡΟΦΗ $μεταβλητές ;
}
Μέθοδος #Declare για τον υπολογισμό της τιμής έκπτωσης
υπουπολογισμός_τιμής
{
$discount_price μου = $variables- > { 'Τιμή' } - $variables- > { 'Τιμή' } * 0.1 ;
λένε 'Εκπτωτική τιμή: \$ $discount_price' ;
}
#Δημιουργήστε ένα αντικείμενο της κλάσης
$proObj μου = Αρχικό προϊόν ( '6745' , 'Οθόνη Dell' , πενήντα ) ;
#Εκτυπώστε τις τιμές των μεταβλητών κλάσης
λένε 'Πληροφορίες προϊόντος μετά τις 10 \% έκπτωση: ' ;
λένε ' \n Αναγνωριστικό: $proObj->{'Id'}' ;
λένε 'Όνομα: $proObj->{'Name'}' ;
λένε 'Αρχική τιμή: \$ $proObj->{'Τιμή'}' ;
#Καλέστε τη μέθοδο αντικειμένου
$proObj- > υπολογισμός_τιμής ( ) ;
Παραγωγή:
Η ακόλουθη έξοδος εμφανίζεται μετά την εκτέλεση του σεναρίου:
Παράδειγμα 3: Χρήση της τάξης με τη δημιουργία μιας ενότητας
Σε αυτό το παράδειγμα, η μονάδα Perl που ορίζεται από το χρήστη δημιουργείται σε ένα ξεχωριστό αρχείο με το όνομα 'CalPower.pm' όπου χρησιμοποιείται η συνάρτηση 'bless'. Δημιουργήστε αυτό το αρχείο με το ακόλουθο σενάριο Perl. Αυτή η ενότητα υπολογίζει το «x n ' όπου οι τιμές των 'x' και 'n' παρέχονται από το σενάριο Perl όπου εισάγεται αυτή η ενότητα.
#!/usr/bin/perlχρησιμοποιήστε αυστηρά ;
χρήση προειδοποιήσεις ;
χρησιμοποιήστε 5.34.0 ;
#Ορίστε το όνομα του πακέτου
πακέτο CalPower ;
#Ορίστε τον κατασκευαστή
κάτω από το Init
{
$className μου = βάρδια ;
$var μου =
{
αριθμός => βάρδια ,
εξουσία => βάρδια
} ;
ευλογεί $var , $className ;
ΕΠΙΣΤΡΟΦΗ $var ;
}
#Ορίστε τη μέθοδο υπολογισμού της τιμής ισχύος
υπο Υπολογισμός
{
$var μου = βάρδια ;
το $αποτέλεσμά μου = $var- > { 'αριθμός' } ;
Για ( $i μου = 1 ; $i < $var- > { 'εξουσία' } ; $i++ )
{
$result = $var- > { 'αριθμός' } * $αποτέλεσμα ;
}
ΕΠΙΣΤΡΟΦΗ $result ;
}
Δημιουργήστε ένα αρχείο Perl με την ακόλουθη δέσμη ενεργειών όπου εισάγεται η μονάδα 'CalPower' για να υπολογίσετε την ισχύ με βάση την τιμή εισόδου που λαμβάνεται από τον χρήστη.
#!/usr/bin/perlχρησιμοποιήστε αυστηρά ;
χρήση προειδοποιήσεις ;
χρησιμοποιήστε 5.34.0 ;
χρησιμοποιήστε CalPower ;
#Λάβετε τη βασική τιμή
Τυπώνω 'Εισαγάγετε την τιμή του x:' ;
chomp ( $x μου = <> ) ;
#Πάρτε το power vale
Τυπώνω 'Εισαγάγετε την τιμή του n:' ;
chomp ( $n μου = <> ) ;
#Δημιουργήστε ένα αντικείμενο της κλάσης
μου $Obj = Εκκινήστε το CalPower ( $x , $n ) ;
#Εκτυπώστε την υπολογισμένη τιμή ισχύος
Τυπώνω '$x στην ισχύ $n είναι' ;
πείτε $Obj- > Υπολογίζω ( ) ;
Παραγωγή:
Η ακόλουθη έξοδος εμφανίζεται μετά την εκτέλεση του σεναρίου:
συμπέρασμα
Οι χρήσεις της συνάρτησης 'bless' στην Perl παρουσιάζονται σε αυτό το σεμινάριο δημιουργώντας ένα πακέτο στο ίδιο αρχείο Perl και δημιουργώντας μια ενότητα σε διαφορετικό αρχείο.