日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費收錄網(wǎng)站服務(wù),提交前請做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:52003
  • 待審:43
  • 小程序:12
  • 文章:1047590
  • 會員:762

函數(shù)重載和重寫的異同點:相同點:提供函數(shù)的多組變體,名稱重用簡化代碼。不同點:作用域:重載在同一作用域,重寫在不同作用域。參數(shù)或返回類型:重載參數(shù)類型不同,重寫允許參數(shù)類型或返回類型不同。目的:重載擴(kuò)展功能,重寫定制或覆蓋父類方法。

C++ 函數(shù)重載與重寫的異同分析

函數(shù)重載

定義:具有相同名稱但不同參數(shù)類型的多個函數(shù)。

特性:

參數(shù)類型不同,從而實現(xiàn)相同功能的多組變體。
發(fā)生在同一作用域內(nèi)。

代碼示例:

#include <iostream>

using namespace std;

// 求面積函數(shù),重載為正方形和圓形
double area(double side) {
    return side * side;
}

double area(double radius) {
    return 3.14 * radius * radius;
}

int main() {
    cout << "正方形面積: " << area(5) << endl;
    cout << "圓形面積: " << area(3) << endl;
}

登錄后復(fù)制

函數(shù)重寫

定義:子類中定義的函數(shù)名稱與父類相同,但參數(shù)類型或返回類型不同。

特性:

重寫父類的方法,提供子類的特有實現(xiàn)。發(fā)生在派生類中,父類和子類處于不同的作用域。代碼示例:

#include <iostream>

using namespace std;

class Shape {
public:
    virtual double area() {
        return 0;
    }
};

class Rectangle : public Shape {
public:
    double height, width;
    
    Rectangle(double height, double width) {
        this->height = height;
        this->width = width;
    }
    
    double area() override {
        return height * width;
    }
};

class Circle : public Shape {
public:
    double radius;
    
    Circle(double radius) {
        this->radius = radius;
    }
    
    double area() override {
        return 3.14 * radius * radius;
    }
};

int main() {
    Rectangle rectangle(5, 3);
    Circle circle(3);
    
    cout << "長方形面積: " << rectangle.area() << endl;
    cout << "圓形面積: " << circle.area() << endl;
}

登錄后復(fù)制

異同對比

相同點:

都可以提供函數(shù)的多組變體。
使用名稱重用性來簡化代碼。

不同點:

作用域:函數(shù)重載發(fā)生在同一作用域內(nèi),而函數(shù)重寫發(fā)生在不同的作用域內(nèi)(父類和子類)。

參數(shù)或返回類型:函數(shù)重載的參數(shù)類型不同,而函數(shù)重寫允許參數(shù)類型或返回類型不同。

目的:函數(shù)重載主要用于擴(kuò)展現(xiàn)有功能,而函數(shù)重寫用于定制或覆蓋父類的方法。

實戰(zhàn)案例

在GUI應(yīng)用程序中,控件往往具有相同的功能(如設(shè)置文本或背景色),但不同的輸入?yún)?shù)(如字符串或顏色對象)。在這種情況下,函數(shù)重載可以簡化API,減少代碼重復(fù)性。

在面向?qū)ο蟮膽?yīng)用程序中,重寫可以實現(xiàn)多態(tài)性。子類可以提供不同的方法實現(xiàn),同時保持繼承父類的接口,從而實現(xiàn)代碼的可擴(kuò)展性和靈活性。

分享到:
標(biāo)簽:C++ 作用域 函數(shù)重寫 函數(shù)重載
用戶無頭像

網(wǎng)友整理

注冊時間:

網(wǎng)站:5 個   小程序:0 個  文章:12 篇

  • 52003

    網(wǎng)站

  • 12

    小程序

  • 1047590

    文章

  • 762

    會員

趕快注冊賬號,推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨大挑戰(zhàn)2018-06-03

數(shù)獨一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運動步數(shù)有氧達(dá)人2018-06-03

記錄運動步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績評定2018-06-03

通用課目體育訓(xùn)練成績評定