• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-341  評(píng)論-2670  文章-0  trackbacks-0
                考慮以下代碼:
            1 def overloading x = "General overloading"
            2 func overloading::string->string
            3 def overloading str = "String overloading"
            4 func overloading T::list T->string
            5 def overloading xs = "List overloading"

                這是三個(gè)函數(shù),類(lèi)型分別為:
            1     func overloading T1 :: (<T1> -> (system.list system.char)) codefrom 125
            2     func overloading :: ((system.list system.char-> (system.list system.char)) codefrom 127
            3     func overloading T1 :: ((system.list <T1>-> (system.list system.char)) codefrom 129

                所以當(dāng)我們寫(xiě)overloading的時(shí)候,究竟選擇什么呢?三個(gè)類(lèi)型都是可以接受的,而且都是可以完美通過(guò)類(lèi)型推導(dǎo)的。于是我新加了一個(gè)規(guī)則。首先求出需要的具體類(lèi)型(可能是含有參數(shù)的類(lèi)型),然后計(jì)算從函數(shù)類(lèi)型到具體類(lèi)型所需要替換的類(lèi)型參數(shù)的個(gè)數(shù)以及每個(gè)類(lèi)型參數(shù)的解,最后計(jì)算出一個(gè)系數(shù)=數(shù)量×65536+解的深度和。

                深度的規(guī)定比較簡(jiǎn)單,基本類(lèi)型深度為1,閉包類(lèi)型為參數(shù)和結(jié)果兩種類(lèi)型的深度的最大值加1,帶有參數(shù)的類(lèi)型等于最大參數(shù)深度加1。所以在這個(gè)例子上,我們可以得到,T1到list char的解為T(mén)1=list char,list char到list char的解為0,list T1到list char的解為T(mén)1=char,系數(shù)分別是65538、0和65537,所以理所當(dāng)然地挑選了第二個(gè)。下面看例子:
            1 def main114 = overloading 1024
            2 def main115 = overloading "Genius Vczh!"
            3 def main116 = overloading [1,2,3]

                下面是運(yùn)行結(jié)果:
            1 main114返回值:"General overloading"
            2 main115返回值:"String overloading"
            3 main116返回值:"List overloading"
            posted on 2008-12-14 19:42 陳梓瀚(vczh) 閱讀(1480) 評(píng)論(0)  編輯 收藏 引用 所屬分類(lèi): 腳本技術(shù)
            久久九九久精品国产| 久久久久亚洲AV无码永不| 青青青青久久精品国产h久久精品五福影院1421 | 久久久久97国产精华液好用吗| 久久综合五月丁香久久激情| 久久亚洲精品成人无码网站| 免费精品99久久国产综合精品| 亚洲国产成人久久综合碰| …久久精品99久久香蕉国产| 久久最新免费视频| 久久精品这里热有精品| 久久久久久曰本AV免费免费| 99久久亚洲综合精品网站| 久久久久se色偷偷亚洲精品av| 一本一道久久精品综合| 久久精品人人槡人妻人人玩AV | 色综合久久最新中文字幕| 亚洲综合久久久| 午夜肉伦伦影院久久精品免费看国产一区二区三区 | 色欲av伊人久久大香线蕉影院| 观看 国产综合久久久久鬼色 欧美 亚洲 一区二区 | 国内精品伊人久久久久网站| 久久人爽人人爽人人片AV| 久久精品国产欧美日韩99热| 久久黄色视频| 亚洲精品tv久久久久| 久久久亚洲精品蜜桃臀| 国产99久久久国产精免费| 久久成人影院精品777| 成人免费网站久久久| 久久久久久久99精品免费观看| 国产午夜精品久久久久免费视| 伊人久久大香线蕉av不卡| 亚洲中文精品久久久久久不卡| 亚洲综合久久久| 亚洲欧洲日产国码无码久久99| 久久婷婷五月综合色奶水99啪| 久久久久99这里有精品10 | 2020最新久久久视精品爱| 久久精品嫩草影院| 国产精品热久久毛片|