关于变量作用域(原译)

兰花姐姐,你真厉害,佩服,下面是什么意思呢
我的理解是申明了一个包变量;
use Net::FTP
但下面又是什么呢
my $ftp = Net::FTP->;new($host,Timeout=>;60,Debug=>;1,Passive=>;1)


QUOTE:
原帖由 "net_xiaobao" 发表:
兰花姐姐,你真厉害,佩服,下面是什么意思呢
我的理解是申明了一个包变量;
use Net::FTP
但下面又是什么呢
my $ftp = Net::FTP->;new($host,Timeout=>;60,Debug=>;1,Passive=>;1)

new出一个新对象。

好东西呀,好东西。
very delicious!

已阅
ding
正用. 呵呵. 学学.


QUOTE:
原帖由 兰花仙子 于 2005-9-15 22:32 发表
仙子注:如下文档翻译自
[url]何时使用my,以及何时使用local呢?

答案很简单:总使用my,绝不要使用local。

请教一个问题。
下面的代码不用 local 怎样实现? 谢谢。

[Copy to clipboard] [ - ]
CODE:
#! /usr/bin/perl
use warnings;
use strict;

{
        local $| = 1;
        for (my $i=0; $i<5; $i++) {
                print "$i ";
                sleep 1;
        }
}

for (my $i=0; $i<5; $i++) {
        print "$i ";
        sleep 1;
}



QUOTE:
原帖由 redspider 于 2006-12-5 18:01 发表
请教一个问题。
下面的代码不用 local 怎样实现? 谢谢。
[code]
#! /usr/bin/perl
use warnings;
use strict;

{
        local $| = 1;
        for (my $i=0; $i<5; $i++) {
                print "$i ";
                sleep ...

你不要断章取义嘛。这里只能用local不能用my,因为$|是个包变量,用my申明它会是个错误。
thank you.
不是故意曲解你的意思。我还以为有什么其它的方法可以实现它。


QUOTE:
原帖由 redspider 于 2006-12-5 20:15 发表
thank you.
不是故意曲解你的意思。我还以为有什么其它的方法可以实现它。

IO::Handle->autoflush(1);
IO::Handle->flush();