c++对c的拓展_函数重载

函数重载:c++中函数名可相同,可有多个函数名相同的函数存在(重载:名字相同意义不同)

本质:c++编译器根据类型来修饰函数

条件:1、同一作用域

           2、参数个数、类型、顺序不同

 注意:1、返回值类型不能作为重载条件

            2、默认参数可存在二义性,存在二义性时报错,要避免其他二义性行为

# include <iostream>

using namespace std;

namespace A{   //不在同一作用域不可重载

void fun(int a){

}

}

void fun(int a){

}

void fun(int a,int b){   //不同参数个数可重载

}

void fun(double a){  //类型不同可重载

}

void fun(int a,double b){   //顺序不同可重载 

}

void fun(double a,int b){

}

void fun(int a,int b=1){   //调用时报错 与fun(int a,int b)发生二义性

}

posted @ 2022-04-06 11:34  spking  阅读(30)  评论(0)    收藏  举报