成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

c++內聯(lián)函數使用和運算符重載的方法是什么

本篇內容主要講解“c++內聯(lián)函數使用和運算符重載的方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“c++內聯(lián)函數使用和運算符重載的方法是什么”吧!

公司專注于為企業(yè)提供網站設計、成都網站制作、微信公眾號開發(fā)、成都商城網站開發(fā),成都微信小程序,軟件按需開發(fā)等一站式互聯(lián)網企業(yè)服務。憑借多年豐富的經驗,我們會仔細了解各客戶的需求而做出多方面的分析、設計、整合,為客戶設計出具風格及創(chuàng)意性的商業(yè)解決方案,創(chuàng)新互聯(lián)建站更提供一系列網站制作和網站推廣的服務。

一.內聯(lián)函數

內聯(lián)函數不走函數調用功能,相當于直接把函數執(zhí)行的代碼塊復制過來了,類似于宏,但是功能一般來說比宏更強大注意

1.內聯(lián)函數比常規(guī)函數要快,但是代價是占用更多內存(空間換時間)
2.類內定義的普通函數都是內聯(lián)函數(注意是類內定義而不是類內聲明)
3.內聯(lián)函數一般把定義寫在頭文件中,而不是源文件

聲明方式
很簡單,在函數前面加上inline

二.運算符重載

int a = 1;
    CStu st;
    st + a;

在沒有運算符重載的情況下,上述運算會報錯。但是有了運算符重載,上述運算就會有結果了。

1.使用形式

返回值+operator+運算符+(),()里面放參數,其中一個參數一定要是對象

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;
}

上面是沒有返回值的,當然也可以有返回值,運算符重載返回值的作用就是:為了能夠進行連續(xù)運算

int operator+(CStu& st1, int b)
{
    return st1.nAge + b;
}
int main()
{
    int a = 1;
    CStu st;
    cout<<st + a + 1<<endl;
    system("pause");
    return 0;
}

2.類外重載與類內重載

上面的例子都是類外重載,其中要注意:參數里面其中一個一定要是對象,而且運算符兩側分別就是左參數和右參數。
類內重載使用示例如下

class CStu
{
public:
    int nAge;
    CStu()
    {
        nAge = 10;
    }
    void operator+(int b)//注意這里只能傳一個參數,因為左參數默認是this指針,也就是相當于有對象做參數
    {
        cout << nAge + b << endl;
    }
};

int main()
{
    int a = 1;
    CStu st;
    st + a;//形式一定是 對象+某個數據類型
    system("pause");
    return 0;
}

注意:形式很死板,就是對象+某個數,不能倒過來。而且默認有左參數是this指針,也就是函數里面可以使用this。

void operator+(int b)
    {
        cout << this->nAge + b << endl;
    }

到此,相信大家對“c++內聯(lián)函數使用和運算符重載的方法是什么”有了更深的了解,不妨來實際操作一番吧!這里是創(chuàng)新互聯(lián)網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

當前標題:c++內聯(lián)函數使用和運算符重載的方法是什么
本文URL:http://jinyejixie.com/article26/gdpicg.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供電子商務、微信公眾號、App開發(fā)、全網營銷推廣、面包屑導航、網站維護

廣告

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

營銷型網站建設
普洱| 开鲁县| 宜君县| 得荣县| 昌图县| 营山县| 青海省| 宝山区| 南乐县| 平远县| 广南县| 宜宾县| 宁明县| 铜陵市| 阿拉善左旗| 宣威市| 浦县| 鸡西市| 黔东| 滕州市| 五大连池市| 昌乐县| 晋宁县| 荥阳市| 定日县| 珲春市| 奉节县| 本溪| 佳木斯市| 大港区| 义马市| 舟曲县| 海淀区| 鄂托克旗| 华容县| 环江| 拜城县| 桃园县| 盘山县| 精河县| 张家界市|