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

C++成員初始化列表

 更新時間:2022年01月05日 09:53:38   作者:梁唐  
這篇文章主要介紹了C++成員初始化列表,除了可以使用構(gòu)造函數(shù)對類成員進(jìn)行初始化之外,C++還提供了另外一種初始化的方法,叫做成員初始化列表。下面來看看文章的詳細(xì)吧,需要的朋友可以參考一下

文章轉(zhuǎn)自: 公眾號:Coder梁(ID:Coder_LT)

除了可以使用構(gòu)造函數(shù)Classy::Classy(int n, int m): mem1(n), mem2(0), mem3(n*m+2) {
    ...
};類成員進(jìn)行初始化之外,C++還提供了另外一種初始化的方法,叫做成員初始化列表。

我們假設(shè)Classy是一個類,而mem1,mem2mem3都是這個類的數(shù)據(jù)成員,那么類構(gòu)造函數(shù)可以寫成:

Classy::Classy(int n, int m): mem1(n), mem2(0), mem3(n*m+2) {
? ? ...
};

上述代碼將mem1初始化為n,將mem2初始化為了0,mem3初始化成了n*m+2。這些初始化工作是對象創(chuàng)建是完成的,并且在執(zhí)行花括號中的內(nèi)容之前。

有這么幾點(diǎn)需要注意:

  • 這種格式只能用于構(gòu)造函數(shù)
  • 必須用這種格式初始化非靜態(tài)const數(shù)據(jù)成員(C++11之前)
  • 必須用這種格式初始化引用數(shù)據(jù)成員

數(shù)據(jù)成員被初始化的順序和它們在類中定義的順序相同,和初始化列表中的排列順序無關(guān)。

C++11的類內(nèi)初始化:

C++11當(dāng)中允許我們直接對成員變量進(jìn)行賦值:

class Classy {
? ? int mem1 = 10;
? ? const int mem2 = 20;
};

這和在構(gòu)造函數(shù)當(dāng)中使用成員初始化列表等價:

Classy::Classy() : mem1(0), mem2(20) {...}

我們在類當(dāng)中直接初始化之后,我們也可以在成員初始化列表當(dāng)中進(jìn)行覆蓋:

Classy::Classy(int n) : mem1(n) {...}

在這種情況下,mem1的值會被替換成n。

到此這篇關(guān)于C++成員初始化列表的文章就介紹到這了,更多相關(guān)C++成員初始化列表內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

日土县| 富平县| 彰武县| 泽库县| 响水县| 武邑县| 贵定县| 隆昌县| 依兰县| 水富县| 崇明县| 青河县| 耒阳市| 镶黄旗| 潼南县| 宣城市| 合山市| 霍林郭勒市| 天镇县| 章丘市| 柳江县| 泸西县| 临漳县| 大连市| 乌拉特后旗| 晋宁县| 修文县| 马尔康县| 渑池县| 江油市| 兴业县| 绥江县| 武安市| 崇左市| 芜湖市| 务川| 绥阳县| 宜昌市| 武邑县| 琼海市| 秦皇岛市|