• <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 戰魂小筑 閱讀(3341) 評論(0)  編輯 收藏 引用 所屬分類: 腳本技術Golang
            久久成人国产精品免费软件| 久久久久亚洲AV无码专区桃色| 国产精品久久婷婷六月丁香| 久久久一本精品99久久精品88| 色综合久久久久无码专区| 久久久精品一区二区三区| 精品久久久久久久久久中文字幕| 久久久精品国产| 亚洲一区中文字幕久久| 久久亚洲日韩看片无码| 久久国产精品久久| 亚洲av成人无码久久精品| 久久99久久无码毛片一区二区| 久久久久久久波多野结衣高潮| 精品久久久久久| 亚洲成色WWW久久网站| 久久996热精品xxxx| avtt天堂网久久精品| 日日狠狠久久偷偷色综合免费| 99国产欧美精品久久久蜜芽| 亚洲国产精品狼友中文久久久 | 国产99久久九九精品无码| 2021久久精品免费观看| 亚洲国产精久久久久久久| 久久婷婷色综合一区二区| 久久久久国产亚洲AV麻豆| 热久久国产精品| 狠狠色丁香久久综合五月| 人妻无码久久一区二区三区免费 | 久久综合香蕉国产蜜臀AV| 伊人久久一区二区三区无码| 久久综合综合久久97色| 国产精品久久自在自线观看| 久久伊人五月丁香狠狠色| 亚洲国产日韩欧美综合久久| 久久久久亚洲av毛片大| 久久亚洲欧洲国产综合| 欧美久久久久久午夜精品| 少妇久久久久久被弄到高潮| 久久久久久A亚洲欧洲AV冫| 久久伊人中文无码|