• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    ruby句法問題

    發布: 2007-7-04 20:03 | 作者: admin | 來源:  網友評論 | 查看: 18次 | 進入軟件測試論壇討論

    領測軟件測試網 4.1 像:exit這種帶:的標識符表示什么?

    它叫做符號對象,它與標識符之間是1對1的關系。您也可以使用"exit".intern來得到它。在catch, throw, autoload等方法中,既可以使用字符串參數,又可以使用符號參數。

    4.2 如何取得與符號同名的變量的值?

    在symbol的作用域內,使用eval((:symbol).id2name)來取值。

    a = 'This is the content of "a"' b = eval(:a.id2name) a.id == b.id 4.3 loop是控制結構嗎?

    不,它是方法。該塊會導入新的局部變量的作用域。

    4.4 a +b報錯,這是怎么回事兒?

    它會被解釋成a(+b)。+的兩側要么都有空格,要么就都沒有。

    4.5 s = "x"; puts s *10 報錯,這是怎么回事兒?

    puts s *10會被解釋成s(*10)的方法調用,所以要么s*10這樣,要么s * 10這樣。

    4.6 為什么p {}沒有任何顯示呢?

    {}會被解釋成塊,而并非哈希表的構造函數。所以您需要使用p({})或者p Hash.new來解決這個問題。

    4.7 明明有pos=()這樣的setter方法,可為什么pos=1時卻沒有任何反應呢?

    請看下例。

    class C attr_reader :pos def pos=(n) @pos = n * 3 end def set pos = 1 #A行 end end a = C.new a.set p a.pos #=> nil (預期值是 3)

    本來指望最后一行能輸出 3,但卻是個 nil ,這是因為Ruby把A行的pos解釋成局部變量了。若想調用pos=()的話,請這樣self.pos = 1調用。

    4.8 '\1'和'\\1'有什么不同?

    沒有不同,二者完全一樣。在單引號中,只有\'、\\和行尾的\(取消換行)會得到特殊的解釋,其他字符不變。

    4.9 在p true or true and false中會顯示true,但在a=true if true or true and false中卻不會把true賦值給a。

    第1個表達式會被解釋成(p true) or true and false,其中的and/or是構成語句的要素,而并不是用來連接p的參數的操作符。

    第2個表達是則會被解釋成a=true if (true or true and false)。因為if的優先度低于and/or,且or與and的優先度相同,所以就會從左到右地完成解析。

    4.10 為什么p(nil || "")什么事兒都沒有,可p(nil or "")卻會報錯呢?

    雖然||可以連接參數,但or就只能連接句子,所以如此。關于這點區別,您試一試下面的例子就明白了。

    p nil || "" p nil or ""

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備10010545號-5
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>