色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

Hi,歡迎來到嵌入式培訓高端品牌 - 華清遠見教育科技集團<北京總部官網>,專注嵌入式工程師培養15年!
當前位置: > 華清遠見教育科技集團 > 嵌入式學習 > 講師博文 > 關于explicit構造函數
關于explicit構造函數
時間:2017-01-06作者:華清遠見

按照默認規定,只有一個參數的構造函數也定義了一個隱式轉換,將該構造函數對應數據類型的數據轉換為該類對象,如下面所示:

class X
         {
                  public:
                           X(int a);
                           X(double b);
         };
         X::X(int a)
         {
                  cout << "X(int)" << endl;
         }
         X::X(double b)
         {
                  cout << "X(double)" << endl;
         }

如果像下面這樣聲明類對象:
         X x1 = 10.1; //OK 隱式轉換,等價于X x1 = X(10.1)
         程序打印:X(double)

假如構造函數改成下面的形式 :
         X(int a);
         Explicit X(double b);
         程序打印:X(int) .

從此例子中可以看到,explicit對構造函數起的作用是:抑制了隱式裝轉換。

但是有的時候可能會不需要這種隱式轉換,如下:

class X
         {
                  public:
                           X(int a) {
                                    cout << "X(int)" << endl;
                           }
           }
         int fun(X x);

當調用 fun(2)的時候:

程序打印:X(int)。和程序員期待的不同。

給構造函數加上explicit后:

編譯器給出了錯誤信息,這就避免了在程序員毫不知情的情況下出現錯誤。

發表評論
評論列表(網友評論僅供網友表達個人看法,并不表明本站同意其觀點或證實其描述)
主站蜘蛛池模板: 欧美精品黑人粗大 | 大地视频在线观看免费高清 | 国产乱国产乱 | 国内精品伊人久久久久影院麻豆 | 国产乱人伦偷精品视频不卡 | 亚洲婷婷五月综合狠狠爱 | 色婷婷综合缴情综免费观看 | 中文字幕亚洲色妞精品天堂 | 亚洲AV无码男人的天堂 | 国产五码在线观看 | 高潮白浆潮喷正在播放 | 美脚丝袜一区二区三区在线观看 | 人妻少妇无码专视频在线 | 老熟女激烈的高潮 | 日韩一级久久 | 伊人精品一区二区三区 | 真实国产乱啪福利露脸 | 国产富婆一级全黄大片 | 扒开双腿猛进入校花免费网站 | 日韩高清不卡无码av | 极品少妇被猛的白浆直喷白浆 | 少妇人妻偷人精品免费视频 | 麻花传剧原创MV在线观看 | 欧美xxxxx做受vr| 午夜成午夜成年片在线观看 | 18禁止导深夜福利备好纸巾 | 久章草在线精品视频免费观看 | 色综合色综合色综合色欲 | 噜啊噜在线观看 | 亚洲小说乱欧美另类 | www欧美在线观看 | 日韩网站黄 | 免费AV片在线观看网址 | 国产成人综合精品无码 | 麻豆视频观看 | 麻豆精产一二三产区 | 乱中年女人伦视频国产 | 国产精品日韩AV在线播放 | 欧美黄色免费网址 | 久久亚洲精品情侣 | 美女扒了内裤让男人桶 |