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

            c++中explict關鍵字的說明和使用

            先看下面這一個簡單的代碼吧

             1 #include <iostream>
             2 using namespace std;
             3 class my
             4 {
             5 private:
             6     int t;
             7 public:
             8     my(){};
             9     my(int i):t(i){};
            10     int get()
            11     {
            12         return t;
            13     }
            14     void print(my d)
            15     {
            16         cout<<d.get()<<endl;
            17     }
            18 };
            19 
            20 int main()
            21 {
            22     my t;
            23     int i=3;
            24     t.print(i);
            25     return 0;
            26 }

            main函數中t.print(i);的調用,my類里面print函數接受的數據類型的my,不是int,但這段程序仍然能夠正常運行,是因為my類里面存在一個只有一個形參的構造函數。

            當在一個需要my類型對象的地方(比如print函數,就需要一個my類型對象),但是如果卻沒有給一個my類型對象,給了一個其他類型的對象,比如int,那么這個時候就會看這個類有沒有定義一個只接受一個參數的構造函數,而且這個形參必須是int,然后構造出一個my類型臨時對象,再把這個臨時對象給需要my類對象的地方,完成一種隱式的轉換。
            注意:如果這個類有一個接受一個參數的構造函數,但是這個參數的類型比如是string,這個隱式轉換肯定就不會發生了,編譯時會提示錯誤。

            總之,隱式轉換會發生在,本來需要一個這種類對象的時候,卻給了一個其他的數據類型,而且類也恰好有一個只接受一個這種數據類型參數的構造函數,就會先調用這個構造函數生成一個臨時對象,接著將這臨時對象用于需要這種類對象的地方。

            但是很多時候,這種隱式轉換會帶來很大的麻煩,因此如果自己定義的類中,有一個只接受一個參數的構造函數,除非有一個好理由允許構造函數被用于隱式類型轉換,否則那么就要在這個構造函數前面加一個關鍵詞 explicit,表明不會發生隱式轉換。

            posted on 2012-09-19 18:15 古月 閱讀(603) 評論(0)  編輯 收藏 引用 所屬分類: C/C++

            <2014年8月>
            272829303112
            3456789
            10111213141516
            17181920212223
            24252627282930
            31123456

            導航

            統計

            常用鏈接

            留言簿

            隨筆分類

            隨筆檔案

            文章檔案

            C++/C

            搜索

            積分與排名

            最新評論

            閱讀排行榜

            評論排行榜

            亚洲愉拍99热成人精品热久久| 久久黄色视频| 香蕉99久久国产综合精品宅男自| 热re99久久精品国产99热| 99久久无码一区人妻a黑| www.久久热| 久久久噜噜噜久久中文字幕色伊伊| 91秦先生久久久久久久| 久久婷婷人人澡人人| 亚洲人成网站999久久久综合| 亚洲av日韩精品久久久久久a | 国产精品亚洲综合久久| 欧美国产精品久久高清| 亚洲伊人久久综合中文成人网| 超级97碰碰碰碰久久久久最新| 99精品久久精品一区二区| 久久精品人人做人人爽97| 亚洲国产精品婷婷久久| 亚洲欧美一级久久精品| 成人资源影音先锋久久资源网| 亚洲欧洲久久av| 成人a毛片久久免费播放| 久久午夜无码鲁丝片午夜精品| 久久99精品久久久久婷婷| 久久一区二区三区免费| 72种姿势欧美久久久久大黄蕉| 久久国产高清一区二区三区| 新狼窝色AV性久久久久久| 国产99久久久国产精品~~牛| 久久亚洲精品国产精品| 久久福利片| 免费观看成人久久网免费观看| 久久狠狠高潮亚洲精品| 亚洲国产成人久久综合区| 国产午夜精品久久久久九九电影 | 久久精品国产第一区二区三区| 久久激情亚洲精品无码?V| 久久精品国产亚洲沈樵| 伊人色综合久久天天人手人婷| 成人午夜精品无码区久久| 99久久99久久精品国产片果冻 |