• <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仔 閱讀(259) 評論(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
            久久精品18| 久久精品国产亚洲av日韩| 91久久精品电影| 亚洲午夜久久久| 国产精品久久久久久福利漫画| 久久99精品国产麻豆宅宅| 色婷婷综合久久久久中文字幕 | 无码精品久久久久久人妻中字| 久久99国产精品久久久| 亚洲日本久久久午夜精品| 久久AV高清无码| 天天综合久久一二三区| 欧美亚洲另类久久综合| 伊人久久大香线蕉亚洲| 女同久久| 久久精品亚洲福利| 久久成人影院精品777| 无码日韩人妻精品久久蜜桃| 久久强奷乱码老熟女网站| 国产精品久久久久影院嫩草| 精品久久久久久国产| 狠狠色丁香久久婷婷综合图片| 国产精久久一区二区三区| 一本久久综合亚洲鲁鲁五月天亚洲欧美一区二区 | 久久天天婷婷五月俺也去| 久久中文字幕一区二区| 久久99国产乱子伦精品免费| 国产99久久久国产精品小说| 久久人人爽人爽人人爽av| 久久国产成人午夜AV影院| 久久国产香蕉视频| 久久精品亚洲男人的天堂| 久久av高潮av无码av喷吹| 办公室久久精品| 久久艹国产| 久久精品中文无码资源站| 久久精品中文字幕大胸| 99久久免费国产精品特黄| 久久久亚洲欧洲日产国码aⅴ| 亚洲欧美日韩久久精品第一区| 亚洲精品蜜桃久久久久久|