• <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>

            戰魂小筑

            討論群:309800774 知乎關注:http://zhihu.com/people/sunicdavy 開源項目:https://github.com/davyxu

               :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
              257 隨筆 :: 0 文章 :: 506 評論 :: 0 Trackbacks

            Golang中沒有設計構造函數. 取而代之的, 設計Golang的大師希望你用普通函數去實現構造的任務. 
            一直只是覺得這只是體現Golang這門新語言的精簡設計之道, 直到自己實現編譯器后才發現構造函數的設計本身是值得商榷的

            我們先看下構造函數的規則

            構造函數調用規則

            構造參數量: 0表示沒有構造函數, 1表示有構造函數0個參數

            本類構造父類構造處理方法
            00不處理
            10調本類ctor
            01調父類ctor
            11調本類ctor, 本類ctor調父類ctor
            21調本類ctor, 本類ctor調父類ctor
            12報錯, 手動調父類ctor
            22報錯, 手動調父類ctor

            普通函數重載規則

            實際只用考慮最典型的一種行為: 實例化子類, 轉為父類調用方法, 這個時候

            如果方法是override, 調用的是子類

            如果方法是virutal或者不指明, 調用的是父類

            整個重載過程, 子類絕對不會隱式調用父類的行為

            需要構造函數么?

            構造函數的優點

            • 本身屬于一種特殊的成員函數
            • 編譯器幫你自動傳導調用父級

            構造函數的缺點

            • 隱式的調用規則
            • 雖然屬于成員函數, 但是與其他成員函數調用規則完全不同, 需要特殊記憶
            • 帶參數的構造函數, 在父類參數多于子類時, 需要引用復雜語法來實現父級構造調用

            其實我們對初始化函數的需求只有1條: 自定義

            所以, 可以理解Golang不加入構造函數的設計是正確的 
            即: 簡單, 清晰, 有規律

            posted on 2016-12-01 10:45 戰魂小筑 閱讀(3348) 評論(0)  編輯 收藏 引用 所屬分類: 腳本技術Golang
            亚洲综合伊人久久大杳蕉| 久久精品国产秦先生| 伊人色综合九久久天天蜜桃| 亚洲精品无码久久不卡| 欧美牲交A欧牲交aⅴ久久| 国产一区二区三区久久精品| 久久夜色精品国产www| 7777精品久久久大香线蕉| 岛国搬运www久久| 婷婷久久五月天| 久久成人影院精品777| 午夜精品久久久久久| 97久久精品无码一区二区天美| 99久久精品免费看国产一区二区三区| 久久精品国内一区二区三区| 亚洲乱码日产精品a级毛片久久 | 女人高潮久久久叫人喷水| 亚洲AV无一区二区三区久久| 久久国产精品二国产精品 | 国产精品熟女福利久久AV| 精品久久久久久国产| 久久精品国产亚洲av瑜伽| 久久久久亚洲av无码专区导航| 欧洲性大片xxxxx久久久| 久久综合欧美成人| 国产国产成人精品久久| 99久久国产亚洲综合精品| 久久久久亚洲精品男人的天堂| 久久99精品久久久久子伦| 亚洲AV无码久久精品成人| 久久综合色之久久综合| 久久久久久A亚洲欧洲AV冫| 91麻精品国产91久久久久| 色综合久久88色综合天天| 99久久免费国产精精品| 久久婷婷五月综合色高清| 99精品久久精品一区二区| 久久天天躁夜夜躁狠狠躁2022| 无码人妻少妇久久中文字幕| 无码精品久久一区二区三区| 亚洲国产精品狼友中文久久久|