本篇內(nèi)容主要講解“c++內(nèi)聯(lián)函數(shù)使用和運(yùn)算符重載的方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“c++內(nèi)聯(lián)函數(shù)使用和運(yùn)算符重載的方法是什么”吧!
公司專注于為企業(yè)提供網(wǎng)站設(shè)計、成都網(wǎng)站制作、微信公眾號開發(fā)、成都商城網(wǎng)站開發(fā),成都微信小程序,軟件按需開發(fā)等一站式互聯(lián)網(wǎng)企業(yè)服務(wù)。憑借多年豐富的經(jīng)驗,我們會仔細(xì)了解各客戶的需求而做出多方面的分析、設(shè)計、整合,為客戶設(shè)計出具風(fēng)格及創(chuàng)意性的商業(yè)解決方案,創(chuàng)新互聯(lián)建站更提供一系列網(wǎng)站制作和網(wǎng)站推廣的服務(wù)。
內(nèi)聯(lián)函數(shù)不走函數(shù)調(diào)用功能,相當(dāng)于直接把函數(shù)執(zhí)行的代碼塊復(fù)制過來了,類似于宏,但是功能一般來說比宏更強(qiáng)大注意
1.內(nèi)聯(lián)函數(shù)比常規(guī)函數(shù)要快,但是代價是占用更多內(nèi)存(空間換時間)
2.類內(nèi)定義的普通函數(shù)都是內(nèi)聯(lián)函數(shù)(注意是類內(nèi)定義而不是類內(nèi)聲明)
3.內(nèi)聯(lián)函數(shù)一般把定義寫在頭文件中,而不是源文件
聲明方式
很簡單,在函數(shù)前面加上inline
int a = 1; CStu st; st + a;
在沒有運(yùn)算符重載的情況下,上述運(yùn)算會報錯。但是有了運(yùn)算符重載,上述運(yùn)算就會有結(jié)果了。
1.使用形式
返回值+operator+運(yùn)算符+(),()里面放參數(shù),其中一個參數(shù)一定要是對象
class CStu { public: int nAge; CStu() { nAge = 10; } }; void operator+(CStu& st1, int b) { cout << st1.nAge + b << endl; } int main() { int a = 1; CStu st; st + a; system("pause"); return 0; }
上面是沒有返回值的,當(dāng)然也可以有返回值,運(yùn)算符重載返回值的作用就是:為了能夠進(jìn)行連續(xù)運(yùn)算。
int operator+(CStu& st1, int b) { return st1.nAge + b; } int main() { int a = 1; CStu st; cout<2.類外重載與類內(nèi)重載
上面的例子都是類外重載,其中要注意:參數(shù)里面其中一個一定要是對象,而且運(yùn)算符兩側(cè)分別就是左參數(shù)和右參數(shù)。
類內(nèi)重載使用示例如下class CStu { public: int nAge; CStu() { nAge = 10; } void operator+(int b)//注意這里只能傳一個參數(shù),因為左參數(shù)默認(rèn)是this指針,也就是相當(dāng)于有對象做參數(shù) { cout << nAge + b << endl; } }; int main() { int a = 1; CStu st; st + a;//形式一定是 對象+某個數(shù)據(jù)類型 system("pause"); return 0; }注意:形式很死板,就是對象+某個數(shù),不能倒過來。而且默認(rèn)有左參數(shù)是this指針,也就是函數(shù)里面可以使用this。
如void operator+(int b) { cout << this->nAge + b << endl; }到此,相信大家對“c++內(nèi)聯(lián)函數(shù)使用和運(yùn)算符重載的方法是什么”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
當(dāng)前標(biāo)題:c++內(nèi)聯(lián)函數(shù)使用和運(yùn)算符重載的方法是什么
文章源于:http://weahome.cn/article/gdpicg.html