日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Ruby基礎(chǔ)代碼經(jīng)驗(yàn)分享

Ruby語言的學(xué)習(xí)和其他編程語言一樣,首先要從基礎(chǔ)開始。在這里我們?yōu)榇蠹医榻B了一下Ruby基礎(chǔ)代碼中的BEGIN和END的編寫方式。#t#

站在用戶的角度思考問題,與客戶深入溝通,找到當(dāng)陽網(wǎng)站設(shè)計(jì)與當(dāng)陽網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶體驗(yàn)好的作品,建站類型包括:成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、域名注冊、網(wǎng)站空間、企業(yè)郵箱。業(yè)務(wù)覆蓋當(dāng)陽地區(qū)。

Ruby基礎(chǔ)代碼之BEGIN 塊

BEGIN 塊中的代碼在所有代碼執(zhí)行之前執(zhí)行,Ruby 允許設(shè)置多個(gè) BEGIN 塊并按出現(xiàn)的順序執(zhí)行塊中的代碼。C# 程序員注意下面的代碼

  1. BEGIN  
  2. {  
  3. print "OnInit(object sender, 
    EventArgs args)\n"  
  4. }  
  5. BEGIN  
  6. {  
  7. print "OnLoad(object sender, 
    EventArgs args)\n"  
  8. }  
  9. print "Running" 

上面的代碼看上去很美吧,可惜的是上面的代碼段會(huì)出現(xiàn) parse error,正確的代碼應(yīng)該是

 
 
 
  1. BEGIN{  
  2. print "OnInit(object sender, 
    EventArgs args)\n"  
  3. }  
  4. BEGIN{  
  5. print "OnLoad(object sender,
     EventArgs args)\n"  
  6. }  
  7. print "Running" 

 

正如上面的代碼段所呈現(xiàn)的,只有當(dāng)起始大括號和 BEGIN 標(biāo)識符位于同一行時(shí)塊內(nèi)的代碼才能得到正確的執(zhí)行。同時(shí) BEGIN 塊也不受任何控制結(jié)構(gòu)的影響,因?yàn)橹灰霈F(xiàn) BEGIN 塊就會(huì)得到執(zhí)行并且只執(zhí)行一次。

 
 
 
  1. i = 0 
  2. while i < 10 
  3. # 雖然處理循環(huán)結(jié)構(gòu)中,但 BEGIN 
    塊內(nèi)的代碼仍然只執(zhí)行一次  
  4. BEGIN{  
  5. print "OnInit(object sender, 
    EventArgs args)\n"  
  6. }  
  7. i += 1  
  8. end  
  9. if false  
  10. # BEGIN 完全不受 if 的影響,
    只要出現(xiàn) BEGIN 塊就會(huì)得到執(zhí)行  
  11. BEGIN{  
  12. print "OnLoad(object sender,
     EventArgs args)\n"  
  13. }  
  14. end  
  15. print "Running" 

 

基于只要現(xiàn)出 BEGIN 就會(huì)得到執(zhí)行和 BEGIN 在所有代碼執(zhí)行之前執(zhí)行的原則,即使 BEGIN 塊前出現(xiàn)了代碼,該代碼仍然會(huì)等待 BEGIN 塊執(zhí)行之后再執(zhí)行。比如下面的代碼段輸出結(jié)果仍然是 OnInit - OnLoad - Running。

 
 
 
  1. print "OnLoad(object sender, 
    EventArgs args)\n"  
  2. BEGIN{  
  3. print "OnInit(object sender,
     EventArgs args)\n"  
  4. }  
  5. print "Running" 

 

Ruby基礎(chǔ)代碼之END 塊

END 塊與 BEGIN 塊相反,在所有代碼執(zhí)行之后執(zhí)行,多個(gè) END 塊時(shí)最先出現(xiàn)的 END 塊最后執(zhí)行。除此之外,END 塊雖然不受 while 的影響,但是可能通過 if 來控制 END 塊的執(zhí)行與否。比如下面代碼的輸出結(jié)果就是 Start - Load - Unload。

 
 
 
  1. if false  
  2. END{  
  3. # 永遠(yuǎn)不輸出  
  4. print "Init"  
  5. }  
  6. end  
  7. END{  
  8. # 最后輸出  
  9. print "Unload\n"  
  10. }  
  11. END{  
  12. # 先于 Unload 輸出  
  13. print "Load\n"  
  14. }  
  15. # 最先輸出  
  16. print "Start\n" 

以上就是我們?yōu)榇蠹医榻B的Ruby基礎(chǔ)代碼講解。


分享標(biāo)題:Ruby基礎(chǔ)代碼經(jīng)驗(yàn)分享
本文地址:http://www.dlmjj.cn/article/djsssio.html