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

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

怪我咯
怪我咯

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

全部回复(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);
}
刘奇

函数重载的原则是,两个函数功能很类似,只有一点点差别(比如参数类型)。如果两个函数实现的功能相差较大,则应该取不同的名字。

小葫芦
  • 重载的函数必须以参数数量或者参数类型的不同来区分
  • 不同的函数调用实例使用的是相同的函数名字
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板