C++ :: 函数重载 & 缺省形参

函数重载:

若有两个及以上的同名函数,但形参的类型或个数不同,编译器会根据实参的类型和个数来匹配最佳的那个函数

但形参的命名、返回类型不同不能区分函数

缺省形参:

如:

int add(int x = 5, int y = 6) {
    return x + y;
}
int main() {
    int a = add();        //11
    int b = add(100);     //106
    int c = add(10, 100); //110
    return 0;
}

注:

重载函数中缺省参数可能会导致歧义从而编译错误

int add(int x, int y) {
    return x + y;
}
int add(int x, int y, int z = 2) {
    return x + y + z;
}
int main() {
    int ret = add(1, 2); //× 这种调用会编译错误
    return 0;
}

 

你可能感兴趣的:(C,&,C++)