c++中函数重载的原则是什么啊?
怪我咯
怪我咯 2017-04-17 11:08:32
0
5
775

如题,我是应届生。这个问题是我面试的时候遇到的,找了很多,不知道正确的原则到底是什么。

怪我咯
怪我咯

走同样的路,发现不同的人生

全部回覆(5)
左手右手慢动作

函數重載的定義: 函數重載是指在同一作用域內,可以有一組具有相同函數名,不同參數列表的函數,這組函數被稱為重載函數。、

所以原則就是相同的函數名,不同的參數列表。返回值不能作為重載依據。

阿神

在C 類的繼承中,子類會繼承父類的函數. 當你用子類聲明一個對象後,調用這個對象裏的一個方法,恰好這個方法是從父類繼承來的,那麼將直接從父類調用該方法。然而,如果你在子類裏對也定義了同名的方法,那麼將從子類調用該方法,而不是從父類。而且父類的方法將被完全忽略。這就是函數重載的原則。

伊谢尔伦

這是函數重載的一個例子。

#include <iostream>

// volume of a cube
int volume(int s)
{
    return s*s*s;
}

// volume of a cylinder
double volume(double r, int h)
{
    return 3.14*r*r*static_cast<double>(h);
}

// volume of a cuboid
long volume(long l, int b, int h)
{
    return l*b*h;
}

int main()
{
    std::cout << volume(10);
    std::cout << volume(2.5, 8);
    std::cout << volume(100, 75, 15);
}
刘奇

函數重載的原則是,兩個函數功能很類似,隻有一點點差別(比如參數類型)。如果兩個函數實現的功能相差較大,則應該取不同的名字。

小葫芦
  • 重載的函數必須以參數數量或者參數類型的不同來區分
  • 不同的函數調用實例使用的是相同的函數名字
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板