重载
前提:(1)同一作用域
(2)函数名相同
要求:不同形参表
注:
返回类型和参数的缺省值不参与重载识别。函数前缀的访问控制(public/protected/private)不影响重载。在不同的名字空间声明的函数不是重载。除 main 函数之外的任何函数都可以重载。
重载的几种情况:
(1)
形参是引用,非引用时
void func(int &x);
void func(int x);
//不属于重载
(2)
形参是const引用,非const引用时
void func(const int &x);
void func(int &x);
//属于重载
(3)
形参是普通指针,指向常量的指针时
void func(int *p);
void func(int const *p);
//属于重载
(4)