C++函数重载、重写与重定义
一、函数重载
1.定义
定义:相同函数名称,不同参数序列(包括参数的个数不同或参数的类型不同)。
2.基本条件
基本条件:
函数名必须相同;
函数参数必须不相同,可以是参数类型或者参数个数不同;
函数返回值可以相同,也可以不相同。(备注:但是如果函数的名称和参数完全相同,仅仅是返回值类型不同,是无法进行函数重载的。)
3.代码(chongzai类)
(1)chongzai.h
#ifndef CHONGZAI_H
#define CHONGZAI_H
class chongzai
{
public:
chongzai();
int compare(int a,int b);
int compare(int c);
double compare(double a, double b);
};
#endif // CHONGZAI_H
(2)chongzai.cpp
#include "chongzai.h"
chongzai::chongzai()
{
}
int chongzai::compare(int a, int b)
{
return a>b?a:b;
}
int chongzai::compare(int c)
{
int b=2*c-1;
return b>c?b:c;
}
double chongzai::compare(double c, double d)
{
return c>d