2019-07-11 函数的重载

函数的重载


在我的理解中,重载函数就像是上下都是广口的漏斗,他们的函数名相同,但是参数类型,或参数个数不同,最后产生与参数类型对应的结果。

note:

  • 对于重载函数来说,他们只有参数的类型或参数的个数不同,与函数的返回值类型无关。

重载与const

重复

int add(int);
int add(const int);//与上面函数重复

int sum(int *);
int sum(int *const);//与上面函数重复

不重复

int add(int &);
int add(const int &);//与上比是新函数

int add(int *);
int add(const int *);//与上比是新函数

eg1:在vs2015编译调试过后,未发现错误

#include<iostream>
using namespace std;
double add(double &num1, double &num2);
int add(int &num1, int &num2);
int add(const int &num1, const int &num2);
int add(const int *num1, const int *num2);
int add(int *num1, int *num2);

int main()
{
    
    return 0;
}
double add(double & num1, double & num2)
{
    double temp = num1 + num2;
    return temp;
}
int add(int &num1, int &num2)
{
    int temp = num1 + num2;
    return temp;
}
int add(const int & num1, const int & num2)
{
    int temp = num1 + num2;
    return temp;
}
int add(const int *num1, const int *num2)
{
    int temp = *num1 + *num2;
    return temp;
}
int add(int * num1, int * num2)
{
    int temp = *num1 + *num2;
    return temp;
}

虽说重载函数,可以减少一些记忆量,但也要视情况而定。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容