Perl入门(六) Perl方法的使用
1.定义一个方法
Perl使用sub定义方法。
语法:
sub 方法名称{方法体}2.%E8%B0%83%E7%94%A8%E4%B8%80%E4%B8%AA%E6%96%B9%E6%B3%95
%E3%80%80%E3%80%80Perl%E7%9B%B4%E6%8E%A5%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95%E5%90%8D%E7%A7%B0%E8%B0%83%E7%94%A8%E6%96%B9%E6%B3%95%E3%80%82
%E3%80%80%E3%80%80%E8%B0%83%E7%94%A8%E6%96%B9%E5%BC%8F%E6%9C%89%E4%BB%A5%E4%B8%8B%E5%9B%9B%E7%A7%8D%EF%BC%9A
%E3%80%80%E3%80%80%E3%80%80%E3%80%80%E6%96%B9%E6%B3%95%E5%90%8D%E7%A7%B0%EF%BC%9B
%E3%80%80%E3%80%80%E3%80%80%E3%80%80&%E6%96%B9%E6%B3%95%E5%90%8D%E7%A7%B0%EF%BC%9B
%E3%80%80%E3%80%80%E3%80%80%E3%80%80%E6%96%B9%E6%B3%95%E5%90%8D%E7%A7%B0();
%E3%80%80%E3%80%80%E3%80%80%E3%80%80&%E6%96%B9%E6%B3%95%E5%90%8D%E7%A7%B0();
%E3%80%80%E3%80%80%E8%AF%B4%E6%98%8E%EF%BC%9A%E6%96%B9%E6%B3%95%E8%B0%83%E7%94%A8%E5%8F%AF%E4%BB%A5%E5%86%8D%E4%BB%BB%E4%BD%95%E4%BD%8D%E7%BD%AE%EF%BC%8C%E5%8F%AF%E4%BB%A5%E5%9C%A8%E6%96%B9%E6%B3%95%E5%89%8D%E3%80%81%E5%90%8E%E8%B0%83%E7%94%A8%EF%BC%8C%E4%B9%9F%E5%8F%AF%E4%BB%A5%E5%9C%A8%E6%96%B9%E6%B3%95%E4%BD%93%E5%86%85%E9%83%A8%E8%B0%83%E7%94%A8%E3%80%82
%E3%80%80%E3%80%80
3.%E4%BC%A0%E9%80%92%E5%8F%82%E6%95%B0
%E3%80%80%E3%80%80Perl%E9%80%9A%E8%BF%87%E6%96%B9%E6%B3%95%E5%90%8D%E5%90%8E%E9%9D%A2%E7%9A%84%E6%8B%AC%E5%8F%B7%E5%B0%86%E5%8F%82%E6%95%B0%E5%88%97%E8%A1%A8%E4%BC%A0%E9%80%92%E5%88%B0%E6%96%B9%E6%B3%95%E4%BD%93%E5%86%85%E3%80%82%E4%BE%8B%E5%A6%82%EF%BC%9Afunction_name(" param1> 方法体内部通过@_接收参数。@_是数组。取值的方法也可以采用下标的形式取得。
br/>2.调用一个方法
Perl直接使用方法名称调用方法。
调用方式有以下四种:
方法名称;
&方法名称;
方法名称();
&方法名称();
说明:方法调用可以再任何位置,可以在方法前、后调用,也可以在方法体内部调用。
3.传递参数
Perl通过方法名后面的括号将参数列表传递到方法体内。例如:function_name("param1","param2"...);
方法体内部通过@_接收参数。@_是数组。取值的方法也可以采用下标的形式取得。
关于传值和传引用:%E3%80%80%E3%80%80%E3%80%80%E3%80%801.%E7%9B%B4%E6%8E%A5%E5%B0%86%E5%80%BC%E5%86%99%E8%BF%9B%E6%96%B9%E6%B3%95%E5%90%8E%E9%9D%A2%E7%9A%84%E6%8B%AC%E5%8F%B7%E5%86%85%E5%B0%B1%E6%98%AF%E4%BC%A0%E5%80%BC%EF%BC%8C%E5%B0%86%E6%A0%87%E9%87%8F%EF%BC%88%24xxx%EF%BC%89%E3%80%81%E6%95%B0%E7%BB%84(@xxxx)%E3%80%81%E5%93%88%E5%B8%8C%E7%BB%93%E6%9E%84%EF%BC%88%xxx%EF%BC%89%E6%94%BE%E8%BF%9B%E5%8E%BB%E5%B0%B1%E6%98%AF%E4%BC%A0%E5%BC%95%E7%94%A8%E3%80%82br/>如何获取引用指向的值?根据引用类型的不同,采用不同的符:引用的值为普通值$$ref,数组@$ref,哈希结构%$ref.是不是和上面说的一样呢?
4.方法的返回值
可以使用return显示的返回值。也可不用return。
简单示例,帮助理解
view plain copy
#!user/bin/env perl -w
#定义一个函数
sub fun_say_hello{
print "hello,world!\n";
}
#引用函数
fun_say_hello;
&fun_say_hello;
fun_say_hello();
&fun_say_hello();
#传递参数
sub fun_say_hello_withname{
($name) = @;
print "hello,$name!\n";
}
fun_say_hello_with_name("Tom");
#传值和传引用
sub fun_changename1{
($fname) = @;
$fname = "Jack";
}
sub fun_changename2{
@ = "Jack";
}
$name = "Tony";
fun_change_name1($name);
print "$name\n";
fun_change_name2($name);
print "$name\n";
#返回值
sub checklogin{
($name) = @;
if ($name eq "Tony")
{
return "welcome\n";
}
else
{
"sorry\n";
}
}
print check_login("Tony");
print check_login("Jack");
版权声明:本文为博主原创文章,未经博主允许不得转载。
本文已收录于以下专栏:perl学习
页:
[1]