HTML Tutorials |
|
XML Tutorials |
|
Browser Scripting |
|
Server Scripting |
|
.NET (dotnet) |
|
Multimedia |
|
Web Building |
|
Java Tutorials |
|
Programming Langauges |
|
Soft Skills |
|
Database Tutorials |
|
Operating System |
|
Software Testing |
|
SAP Module |
|
Networking Programming |
|
Microsoft Office |
|
Accounting |
|
|
Subroutines in Perl
|
Alle Perl Programme, die wir bis jetzt geschrieben haben, haben einfach einen Satz Anweisungen, Linie durch Linie. Wie jede mögliche andere Sprache erlauben Perl uns, Code in die modulare Form zu schreiben. Die Sprache so zu tun sollte dem Programmierer erlauben Subroutinen des Codes beiseite zu setzen damit sie wiederverwendet werden können. Perl auch liefern diese Eigenschaft.
|
Hier merken, daß viele Leute Perl Subroutinen als „Funktionen“ benennen. In diesem Abschnitt, den wir es vorziehen, Bezeichnung zu verwenden für jene Subroutinen, die in Perl errichtet werden, und „Subroutinen“ für die „, arbeitet“ Code, die vom Perl Programmierer geschrieben werden.
|
Hier merken, daß ein Benutzer, welche Subroutinen gleichgültig wo verwendet werden können es, mit einer gebürtigen Perl Funktion gültig ist.
|
Definieren einer Subroutine
|
Wir wünschen unsere neue Subroutine die Anzeige nicht drucken. Stattdessen wünschen wir sie die Zeichenkette der Anzeige zurückbringen, und später benennen wir Druck auf ihm.
|
use strict;
sub HelloEveryone {
return "Hello everyone.\nWhere do you want to go with Perl today?\n";
}
print &HelloEveryone;
|
|
Using Arguments in Subroutines
|
Wenn du nicht Eingang zur Subroutine geben kannst dann, daß subrioutine nicht von vielem gutgebrauch ist. Folglich erlaubt Perl uns, Argumente zu den Subroutinen gerade wie gebürtigen Perl Funktionen zu führen.
|
Perl stellt eine spezielle Feldvariable „@_“ am Anfang jeder Subroutine ein, um die Liste der Argumente zu sein, die zur Subroutine geschickt werden. Durch irgendeine Standardversammlung können wir diese Variablen mit $_ zugänglich machen [0. $#_]. Jedoch anstatt zuzuweisen ist besser, eine Liste von Variablen zu erklären und @ _ ihnen sofort. Uns zum Beispiel betrachten lassen, wenn wir bestimmte Gruppe Leute grüßen möchten, wir kann das folgende tun:
|
use strict;
sub HelloEveryone {
my($name1, $name2) = @_;
return "Hello $name1 and $name2.\n" .
"Where do you want to go with Perl today?\n";
}
print &HelloEveryone("John", "David");
|
|
Hier merken, daß, da wir in einem neuen Block sind und mein verwendet haben, die Variablen, die wir erklärten, leben, solange die Subroutine durchgeführt erhält.
|
Diese Subroutine läßt eine Spitze, die gewünscht wird. Es würde, wenn wir einen kundenspezifischen Gruß haben, anstelle von „hallo“ gut sein. Zusätzlich möchten wir auch da viele Leute, während wir zu wünschen, und nicht gerade zwei grüßen. Dieser Code regelt diese zwei Probleme:
|
use strict;
sub HelloEveryone {
my($greeting, @names) = @_;
my $returnString;
foreach my $name (@names) {
$returnString .= "$greeting, $name!\n";
}
return $returnString .
"Hey here's VYOM technosoft?\n";
}
print &HowdyEveryone("Hello", "John", "David", "Peter", "George", "Michal");
|
|
In diesem Beispiel haben wir zwei interessante Techniken verwendet. Erstens benutzen wir eine Liste als der letzte Parameter, wenn wir Argumente annehmen. Es bedeutet, daß alles in @names nach dem ersten Argument gesetzt wird. Hier merken, daß alle mögliche anderen Variablen, die @names folgten, unbestimmt geblieben sein würden. Jedoch empfangen Skalarvariablen vor der Reihe (wie $greeting) Werte aus @_ heraus. So ist es gutes üblich, nur Reihe das letzte Argument zu bilden.
|
|
|
Keywords:perl tutorial, perl scripts, perl programming, active perl, perl download,
blackberry perl, perl regular expressions, perl split, perl array, perl script page
|
|
HTML Quizes |
|
XML Quizes |
|
Browser Scripting Quizes |
|
Server Scripting Quizes |
|
.NET (dotnet) Quizes |
|
Multimedia Quizes |
|
Web Building Quizes |
|
Java Quizes |
|
Programming Langauges Quizes |
|
Soft Skills Quizes |
|
Database Quizes |
|
Operating System Quizes |
|
Software Testing Quizes |
|
SAP Module Quizes |
|
Networking Programming Quizes |
|
Microsoft Office Quizes |
|
Accounting Quizes |
|
|