Chinaunix
标题:
学习引用竟然可以引用程序块!!
[打印本页]
作者:
tsie_chen
时间:
2010-12-16 00:07
标题:
学习引用竟然可以引用程序块!!
#use strict;
sub say {
print @_;
}
my %book1 = (
"书名" => "谋杀与创造之时" ,
"作者" => "劳伦斯",
"价格" => "23",
);
my %book2 = (
"书名" => "繁花将尽" ,
"作者" => "劳伦斯",
"价格" => "33",
);
my @books = (\ %book1,\ %book2);
for (@books) {
for my $key(keys %{$_}) {
say "$key = ${$_}{$key}\n\n";
}
}
my $say = ${say('这里是say()!!!')} ; #引用say();
say $say;
<STDIN>;
作者:
cinanine
时间:
2010-12-16 00:59
竟然可以
作者:
2gua
时间:
2010-12-16 08:47
这啥意思啊?
作者:
guap514
时间:
2010-12-16 08:57
加个 use warnings; 你就知道不可以了
作者:
tsie_chen
时间:
2010-12-17 16:50
开始被吓到了。。。
perl确实可以引用程序块!
use strict;
#直接付值
my $a =sub {
sub hi {print "这是a\n";}
sub a {print "你可以叫我,啊~~\n";}
};
sub b {
print @_;
}
$a=>hi;
$a=>a;
$b = \&b; #引用
$b->("原来你是啊啊!");
<STDIN>;
#是不是有点在用模组
作者:
zhlong8
时间:
2010-12-17 18:32
匿名函数……
$a=>hi; 不就是 hi
作者:
tsie_chen
时间:
2010-12-17 18:34
本帖最后由 tsie_chen 于 2010-12-17 18:38 编辑
可不可以这么说,perl 是通过引用来实现面向函数和对象的。
作者:
x9x9
时间:
2010-12-17 23:13
本帖最后由 x9x9 于 2010-12-17 23:15 编辑
可不可以这么说,perl 是通过引用来实现面向函数和对象的。
tsie_chen 发表于 2010-12-17 18:34
是这样的。但不仅是对函数的引用,还包括所有的引用。然后bless一下实现。建议深入读下Intermediate Perl。
作者:
tsie_chen
时间:
2010-12-18 16:08
有國文版嗎?
作者:
x9x9
时间:
2010-12-18 21:21
有國文版嗎?
tsie_chen 发表于 2010-12-18 16:08
你不是大陆人吗?
作者:
tsie_chen
时间:
2010-12-18 22:16
本帖最后由 tsie_chen 于 2010-12-18 22:30 编辑
。。。。。!?
作者:
kingwmj
时间:
2010-12-19 11:11
perl的引用很复杂,特别是对我这种任何语言都是0基础的人。
作者:
tsie_chen
时间:
2010-12-19 15:47
啊,中学的时候,你没学过BASIC,可是必修课!?
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2