最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++ explicit關(guān)鍵字的使用詳解

 更新時(shí)間:2021年09月10日 15:31:55   作者:一世流離  
這篇文章主要介紹了C++ explicit關(guān)鍵字的使用詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下

在C++中,我們有時(shí)可以將構(gòu)造函數(shù)用作自動(dòng)類(lèi)型轉(zhuǎn)換函數(shù)。但這種自動(dòng)特性并非總是合乎要求的,有時(shí)會(huì)導(dǎo)致意外的類(lèi)型轉(zhuǎn)換,因此,C++新增了關(guān)鍵字explicit,用于關(guān)閉這種自動(dòng)特性。即被explicit關(guān)鍵字修飾的類(lèi)構(gòu)造函數(shù),不能進(jìn)行自動(dòng)地隱式類(lèi)型轉(zhuǎn)換,只能顯式地進(jìn)行類(lèi)型轉(zhuǎn)換。

注意:只有一個(gè)參數(shù)的構(gòu)造函數(shù),或者構(gòu)造函數(shù)有n個(gè)參數(shù),但有n-1個(gè)參數(shù)提供了默認(rèn)值,這樣的情況才能進(jìn)行類(lèi)型轉(zhuǎn)換。

下面通過(guò)一段代碼演示具體應(yīng)用(無(wú)explicit情形):

/* 示例代碼1 */
class Demo
{
   public:
    Demo();                     /* 構(gòu)造函數(shù)1 */
    Demo(double a);              /* 示例代碼2 */
    Demo(int a,double b);           /* 示例代碼3 */
    Demo(int a,int b=10,double c=1.6);  /* 示例代碼4 */
    ~Demo();
    void Func(void);

    private:
    int value1;
    int value2;
};

上述四種構(gòu)造函數(shù):

構(gòu)造函數(shù)1沒(méi)有參數(shù),無(wú)法進(jìn)行類(lèi)型轉(zhuǎn)換!

構(gòu)造函數(shù)2有一個(gè)參數(shù),可以進(jìn)行類(lèi)型轉(zhuǎn)換,如:Demo test; test = 12.2;這樣的調(diào)用就相當(dāng)于把12.2隱式轉(zhuǎn)換為Demo類(lèi)型。

構(gòu)造函數(shù)3有兩個(gè)參數(shù),且無(wú)默認(rèn)值,故無(wú)法使用類(lèi)型轉(zhuǎn)換!

構(gòu)造函數(shù)4有3個(gè)參數(shù),其中兩個(gè)參數(shù)有默認(rèn)值,故可以進(jìn)行隱式轉(zhuǎn)換,如:Demo test;test = 10;  。

下面講述使用了關(guān)鍵字explicit的情況:

/* 示例代碼2 */
class Demo
{
    public:
    Demo();                     /* 構(gòu)造函數(shù)1 */
    explicit Demo(double a);        /* 示例代碼2 */
    Demo(int a,double b);           /* 示例代碼3 */
    ~Demo();
    void Func(void);
    private:
    int value1;
    int value2;
};

在上述構(gòu)造函數(shù)2中,由于使用了explicit關(guān)鍵字,則無(wú)法進(jìn)行隱式轉(zhuǎn)換。即:Demo test;test = 12.2;是無(wú)效的!但是我們可以進(jìn)行顯示類(lèi)型轉(zhuǎn)換,如:

Demo test;

test = Demo(12.2); 或者

test = (Demo)12.2;

到此這篇關(guān)于C++ explicit關(guān)鍵字的使用詳解的文章就介紹到這了,更多相關(guān)C++ explicit關(guān)鍵字的使用內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Visual Studio Code配置C、C++環(huán)境并編寫(xiě)運(yùn)行的方法

    Visual Studio Code配置C、C++環(huán)境并編寫(xiě)運(yùn)行的方法

    這篇文章主要介紹了Visual Studio Code配置C、C++環(huán)境并編寫(xiě)運(yùn)行的方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-08-08
  • C語(yǔ)言 OpenCV實(shí)現(xiàn)柱面投影

    C語(yǔ)言 OpenCV實(shí)現(xiàn)柱面投影

    在做全景拼接的時(shí)候,為了保持圖片中的空間約束與視覺(jué)的一致性,需要進(jìn)行柱面投影,否則離中心圖像距離越遠(yuǎn)的圖像拼接后變形越大。本文將具體介紹一下這如何實(shí)現(xiàn),需要的可以參考一下
    2021-12-12
  • 基于Qt實(shí)現(xiàn)Android的圖案密碼效果

    基于Qt實(shí)現(xiàn)Android的圖案密碼效果

    這篇文章主要為大家詳細(xì)介紹了如何基于Qt實(shí)現(xiàn)Android的圖案密碼效果,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起了解一下
    2024-12-12
  • C語(yǔ)言結(jié)構(gòu)體簡(jiǎn)單入門(mén)講解

    C語(yǔ)言結(jié)構(gòu)體簡(jiǎn)單入門(mén)講解

    這篇文章主要介紹了C語(yǔ)言結(jié)構(gòu)體簡(jiǎn)單入門(mén)講解,本文講述了結(jié)構(gòu)體的基本定義和操作,講解了幾個(gè)比較實(shí)用的函數(shù)和案例,希望對(duì)你有所幫助
    2021-06-06
  • 一文詳解C++中的類(lèi)型轉(zhuǎn)化

    一文詳解C++中的類(lèi)型轉(zhuǎn)化

    說(shuō)起類(lèi)型轉(zhuǎn)化,我們?cè)贑語(yǔ)言之前的學(xué)習(xí)中可以了解到,類(lèi)型轉(zhuǎn)換可以分為兩種情況:隱式類(lèi)型轉(zhuǎn)化;顯示類(lèi)型轉(zhuǎn)化。但是為什么在c++中還要繼續(xù)對(duì)類(lèi)型轉(zhuǎn)化做文章呢?我們一起來(lái)看
    2023-04-04
  • C++中String類(lèi)型的逆序方式

    C++中String類(lèi)型的逆序方式

    這篇文章主要介紹了C++中String類(lèi)型的逆序方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-07-07
  • Qt數(shù)據(jù)庫(kù)應(yīng)用之通用數(shù)據(jù)庫(kù)同步

    Qt數(shù)據(jù)庫(kù)應(yīng)用之通用數(shù)據(jù)庫(kù)同步

    數(shù)據(jù)庫(kù)同步的主要功能是將本地的數(shù)據(jù)庫(kù)記錄同步到遠(yuǎn)程的數(shù)據(jù)庫(kù)。本文將利用Qt實(shí)現(xiàn)通用數(shù)據(jù)庫(kù)同步功能,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-03-03
  • C++棧實(shí)現(xiàn)逆波蘭式的應(yīng)用

    C++棧實(shí)現(xiàn)逆波蘭式的應(yīng)用

    逆波蘭式指的是操作符在其所控制的操作數(shù)后面的表達(dá)式。本文主要介紹了C++棧實(shí)現(xiàn)逆波蘭式的應(yīng)用,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-11-11
  • 原碼, 反碼與補(bǔ)碼基礎(chǔ)知識(shí)詳細(xì)介紹

    原碼, 反碼與補(bǔ)碼基礎(chǔ)知識(shí)詳細(xì)介紹

    這篇文章講解了計(jì)算機(jī)的原碼, 反碼和補(bǔ)碼. 并且進(jìn)行了深入探求了為何要使用反碼和補(bǔ)碼, 以及更進(jìn)一步的論證了為何可以用反碼, 補(bǔ)碼的加法計(jì)算原碼的減法,需要的朋友可以參考下
    2016-12-12
  • C語(yǔ)言代碼實(shí)現(xiàn)簡(jiǎn)單掃雷小游戲

    C語(yǔ)言代碼實(shí)現(xiàn)簡(jiǎn)單掃雷小游戲

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)掃雷游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-01-01

最新評(píng)論

道真| 商都县| 新安县| 临沧市| 土默特左旗| 邵武市| 仙游县| 深泽县| 新丰县| 堆龙德庆县| 石狮市| 凌海市| 垦利县| 历史| 延吉市| 江西省| 昌乐县| 遂溪县| 昭平县| 六盘水市| 安达市| 绥中县| 迭部县| 定边县| 龙山县| 乌审旗| 华亭县| 卓尼县| 晋中市| 太仓市| 大冶市| 山丹县| 甘肃省| 凉城县| 离岛区| 出国| 建昌县| 广平县| 海阳市| 永春县| 博乐市|