校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > perl中的范圍聲明our-my-local介紹

perl中的范圍聲明our-my-local介紹

熱門標(biāo)簽:熱門電銷機(jī)器人 外呼電信系統(tǒng) 智能機(jī)器人電銷神器 河南虛擬外呼系統(tǒng)公司 萬利達(dá)百貨商場地圖標(biāo)注 惠州龍門400電話要怎么申請 okcc外呼系統(tǒng)怎么調(diào)速度 電話機(jī)器人哪里有賣 上海企業(yè)外呼系統(tǒng)

老實說,這個東西有點折騰人,主要是書上的表述很晦澀,其實搞懂不難。
 
our,"把名字限于某個范圍“,其實就是明確聲明一個"全局變量",雖然是在某個模塊或者函數(shù)里面定義的,外面的也可以訪問,如果已經(jīng)聲明過了,再次用"our",表示此處用的是全局的那個,不是同名的私有或者局部變量

復(fù)制代碼 代碼如下:

our $PROGRAM_NAME = "waiter";
{
my  $PROGRAM_NAME = "something";
our $PROGRAM_NAME = "server"; #這里的our和外面的相同,和前句不同。
# 這里調(diào)用的代碼看到的是"server"
}
# 這里執(zhí)行的代碼看到的仍然是"server".

my ,"把名字和值都限于限于某個范圍",簡單說,就是只能本層模塊或者函數(shù)可以看到這個變量,高一層的或者低一層的都看不到的。
復(fù)制代碼 代碼如下:

sub greeting1{
    my ($hello) = "How are you do?";
    greeting2();
}
 
sub greeting2{
    print "$hello\n";
}
$hello = "How are you doing?";
greeting2();
greeting1();
greeting2();

運行結(jié)果:
復(fù)制代碼 代碼如下:

How are you doing?
How are you doing?
How are you doing?

一個 How are you do? 都沒有,在greeting1中call greeting2時,greeting2看不到greeting1的私有$hello變量,只能看到外面的全局變量$hello
 
local,"把值局限于某個范圍",也有叫"動態(tài)詞法范圍",有點不好懂。我的理解,就是本層和本層下層的函數(shù)可以看到本層的變量,但是本層上一層的不可以。到底范圍是多少,不僅取決于本層的函數(shù),還要看下一層的程序長度和深度,所以叫"動態(tài)范圍"。
復(fù)制代碼 代碼如下:

sub greeting1{
    local ($hello) = "How are you do?";
    greeting2();
}

sub greeting2{
    print "$hello\n";
}
$hello = "How are you doing?";
greeting2();
greeting1();
greeting2();


運行結(jié)果:
復(fù)制代碼 代碼如下:

How are you doing?
How are you do?
How are you doing?

跟用 my 時不一樣了吧? 此時在greeting1調(diào)用greeting2時,greeting2可以看到greeting1的局部變量$hello,外部的全局變量當(dāng)然就隱藏了。

標(biāo)簽:周口 綿陽 淮安 百色 秦皇島 合肥 周口 綏化

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《perl中的范圍聲明our-my-local介紹》,本文關(guān)鍵詞  perl,中的,范圍,聲明,our-my-local,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《perl中的范圍聲明our-my-local介紹》相關(guān)的同類信息!
  • 本頁收集關(guān)于perl中的范圍聲明our-my-local介紹的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 乡城县| 九寨沟县| 杂多县| 张家港市| 馆陶县| 白城市| 铜梁县| 红安县| 东乡族自治县| 股票| 陇西县| 瓦房店市| 响水县| 嘉黎县| 西城区| 琼结县| 贡山| 广东省| 保靖县| 石景山区| 柘城县| 新安县| 南宫市| 扎囊县| 马尔康县| 涿鹿县| 南溪县| 聊城市| 海城市| 衡水市| 土默特左旗| 玉环县| 荔浦县| 平和县| 吉林省| 洪泽县| 百色市| 张掖市| 怀仁县| 曲水县| 固阳县|