• <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>
            posts - 10, comments - 1, trackbacks - 0, articles - 2

            explicit關鍵字的作用

            Posted on 2009-05-31 21:05 Ben仔 閱讀(253) 評論(0)  編輯 收藏 引用 所屬分類: c++
            c++中的explicit關鍵字用來修飾類的構造函數,表明該構造函數是顯式的,既然有"顯式"那么必然就有"隱式",那么什么是顯示而什么又是隱式的呢? 如果c++類的構造函數有一個參數,那么在編譯的時候就會有一個缺省的轉換操作:將該構造函數對應數據類型的數據轉換為該類對象,如下面所示: class MyClass { public: MyClass( int num ); } .... MyClass obj = 10; //ok,convert int to MyClass 在上面的代碼中編譯器自動將整型轉換為MyClass類對象,實際上等同于下面的操作: MyClass temp(10); MyClass obj = temp; 上面的所有的操作即是所謂的"隱式轉換"。 如果要避免這種自動轉換的功能,我們該怎么做呢?嘿嘿這就是關鍵字explicit的作用了,將類的構造函數聲明為"顯示",也就是在聲明構造函數的時候前面添加上explicit即可,這樣就可以防止這種自動的轉換操作,如果我們修改上面的MyClass類的構造函數為顯示的,那么下面的代碼就不能夠編譯通過了,如下所示: class MyClass { public: explicit MyClass( int num ); } .... MyClass obj = 10; //err,can't non-explict convert
            亚洲精品高清国产一久久| 久久亚洲精品成人无码网站| 欧洲成人午夜精品无码区久久| 91视频国产91久久久| 久久天天躁狠狠躁夜夜av浪潮 | 久久伊人精品青青草原高清| 久久精品无码免费不卡| 久久久久久无码Av成人影院| 亚洲精品无码久久不卡| 久久伊人精品青青草原高清| 一本一本久久a久久精品综合麻豆| 中文字幕无码精品亚洲资源网久久| 热久久这里只有精品| 亚洲欧洲精品成人久久曰影片| 久久99精品久久只有精品| 久久人人爽爽爽人久久久| 国产激情久久久久影院小草| 久久A级毛片免费观看| 中文字幕无码久久久| 久久国产精品久久久| 久久国产精品99久久久久久老狼| 中文字幕无码av激情不卡久久| 久久久91精品国产一区二区三区| 伊人久久精品无码二区麻豆| 久久久久久国产a免费观看不卡| 久久国产高清字幕中文| 午夜精品久久久久久久| 一本一本久久A久久综合精品| 久久精品国产WWW456C0M| 国产精品久久久久久久久| 成人久久免费网站| 7777精品伊人久久久大香线蕉 | 欧美精品福利视频一区二区三区久久久精品| 97久久国产露脸精品国产| 伊人色综合久久天天网| 国产精品久久久久久久久软件| 免费一级欧美大片久久网 | 久久久无码精品亚洲日韩按摩| 久久久久亚洲av成人网人人软件| 一本色道久久99一综合| 天天爽天天狠久久久综合麻豆|