欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

C++11——“=default“和“=delete“函數(shù)特性-創(chuàng)新互聯(lián)

c++的類有四種特殊成員函數(shù):

創(chuàng)新互聯(lián)建站專業(yè)為企業(yè)提供扎賚諾爾網(wǎng)站建設(shè)、扎賚諾爾做網(wǎng)站、扎賚諾爾網(wǎng)站設(shè)計(jì)、扎賚諾爾網(wǎng)站制作等企業(yè)網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)與制作、扎賚諾爾企業(yè)網(wǎng)站模板建站服務(wù),十載扎賚諾爾做網(wǎng)站經(jīng)驗(yàn),不只是建網(wǎng)站,更提供有價(jià)值的思路和整體網(wǎng)絡(luò)服務(wù)。
  • 默認(rèn)構(gòu)造函數(shù)
  • 析構(gòu)函數(shù)
  • 拷貝構(gòu)造函數(shù)
  • 拷貝賦值運(yùn)算符

? 這些類的特殊成員函數(shù)負(fù)責(zé)創(chuàng)建、初始化、銷毀或者拷貝類的對象。
? 如果程序員沒有顯示的為類定義某個(gè)特殊成員函數(shù),而又需要用到該特殊成員函數(shù)時(shí),編譯器會隱式地為這個(gè)類生成一個(gè)默認(rèn)的特殊成員函數(shù);
? 而如果程序員顯示的定義了某個(gè)特殊成員函數(shù),編譯器將不會自動為你生成默認(rèn)的構(gòu)造函數(shù)了,如果還想用默認(rèn)構(gòu)造函數(shù),就需要自己手寫,如果變量很多的話這將會很麻煩。

? c++11標(biāo)準(zhǔn)因此引入了新特性:default函數(shù)。程序員只需在函數(shù)聲明后加上”=default;”,就可將該函數(shù)聲明為defaulted函數(shù),編譯器將為顯式聲明的defaulted函數(shù)自動生成函數(shù)體。

? defaulted函數(shù)特性僅適用于類的特殊成員函數(shù),且該特殊成員函數(shù)沒有默認(rèn)參數(shù)。
? defaulted函數(shù)既可以在類體里(inline)定義,也可以在類體外(out-of-line)定義。

default的用處

來看一個(gè)簡單的例子:

例子來源

class Student
{int ID;
std::string sName;
};

Student s1;
Student s2(s1);

在不定義任何構(gòu)造函數(shù)的情況下,Student對象能定義成功,因?yàn)榫幾g器會默認(rèn)為我們設(shè)置幾個(gè)構(gòu)造函數(shù),多的不說了,就說最簡單的兩個(gè)

Student() {}
Student(const Student& o):ID(o.ID),sName(o.sName)
{}

一個(gè)是在不提供任何參數(shù)的情況下的默認(rèn)構(gòu)造函數(shù),另一個(gè)是通過另一個(gè)對象構(gòu)造的拷貝構(gòu)造函數(shù)。

class Student
{int ID;
std::string sName;
public:
Student(const string& _sName):sName(_sName){}
};

Student s1;
Student s2(s1);

但是如果我們自己加了一個(gè)只指定名字參數(shù)的構(gòu)造函數(shù),上面這段代碼就編譯不過了。因?yàn)榫幾g器就不自動為你生成默認(rèn)的那些構(gòu)造函數(shù)了,因?yàn)樗X得你想根據(jù)自己的需求定義構(gòu)造函數(shù)。但是,如果你除了自己自定義的構(gòu)造函數(shù),還想用編譯器為你生成默認(rèn)的,怎么辦?

class Student
{int ID;
std::string sName;
public:
Student() {}
Student(const Student& o) :ID(o.ID), sName(o.sName)
{}
Student(const string& _sName):sName(_sName){}
};

傳統(tǒng)的辦法就是受點(diǎn)累,把編譯器為你生成的那兩個(gè)你親自寫一遍,這樣不累嗎?尤其是student成員變量很多的時(shí)候。有了default關(guān)鍵以后,省事多了,

class Student
{int ID;
    std::string sName;
    public:
    Student() = default;
    Student(const Student& o) = default;
    Student(const string& _sName):sName(_sName){}
};

Student s1;
Student s2(s1);

那兩個(gè)默認(rèn)的構(gòu)造函數(shù),我們想要的實(shí)現(xiàn)跟編譯器默認(rèn)的一模一樣,直接指定個(gè)default就行了,不用全部手打出來。這就是default這個(gè)關(guān)鍵字的作用。

完整的例子如下所示:

class x2
{public:
    	x2() = default;	//inline(類內(nèi)) defaulted 默認(rèn)構(gòu)造函數(shù)
    	x2(const x2&);
    	x2& operator=(const x2&);
    	~x2() = default;	//inline(類內(nèi)) defaulted 析構(gòu)函數(shù)
};

x2::x2(const x2&) = default; // 類外 拷貝構(gòu)造函數(shù)
x2& x2::operator=(const x2&) =default;	//類外 拷貝賦值操作符
delete的用處

同樣的對于上面的例子中,如果你不想讓諸如:

Student s1;
Student s2(s1);

這樣的默認(rèn)構(gòu)造函數(shù)被調(diào)用,除了寫顯示的特殊函數(shù),讓編譯器為你排除掉,還可以通過=delete函數(shù)特性來為你禁用某些函數(shù)

例如:

class x5
{public:
    	// 禁用類的new操作符
    	void *operator new(size_t) = delete;
    	void *operator new[](size_t) = delete;
}

x5 *pa = new x5; // 錯(cuò)誤
x5 *pb = new x5[10]; // 錯(cuò)誤

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧

網(wǎng)站題目:C++11——“=default“和“=delete“函數(shù)特性-創(chuàng)新互聯(lián)
文章分享:http://aaarwkj.com/article44/dedoee.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信公眾號、軟件開發(fā)、靜態(tài)網(wǎng)站、響應(yīng)式網(wǎng)站、網(wǎng)站維護(hù)建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)
国产丝袜美腿视频亚洲综合| 亚洲天堂一区二区av| 亚洲精品一区二区三区高清| 丁香六月色婷婷亚洲激情 | 免费精品黑人一区二区三区| 国产免费不卡午夜福利在线| 一级黄片视频免费下载| 日韩精品二区在线观看| 久久人人97超碰人人爱一久久精品| 性生活的视频免费观看麻豆| 亚洲精品国产第一区第二区| 日本中文字幕激情在线| 中文字幕九七精品乱码| 久久se精品人妻一区二区三区| 邻居少妇扒开腿让我爽了一夜| 欧美日韩国产另类在线视频| 亚洲综合中文字幕精品| 国产91精品成人在线观看| 97国产精品成人免费视频| 日本乱码一区二区三区在线观看| 亚洲成人av在线直播| 国产美女主播视频一区二区三区| 亚洲国产剧情中文字幕| 免费av中文字幕电影| 国产亚洲欧美成人精品久久| 97门久欧美日韩久久| 久久人妻一区二区三区免费密臀| 亚洲熟妇人妻一区二区三区| 久久精品国产亚洲av蜜点| 亚洲中文字幕高清无二区| 日韩在线啊啊啊的视频| 亚洲黄色片大奶子水多| 日本成人精品一区二区三区| 97成品视频在线播放| 日韩精品国产自拍在线| 国产午夜在线观看免费视频 | 色欧美在线视频观看日韩| 亚洲黄色片在线播放| 精品国产品国语在线不卡| 人人妻夜夜天天俺去添噜| 欧美 国产 综合 日韩|