对重载函数的调用不明确
时间: 2023-09-17 08:09:59 浏览: 189
重载函数调用运算符-C++学习笔记
重载函数是指在同一个作用域内,有多个名称相同但参数列表不同的函数。当你调用一个重载函数时,编译器会根据实参的类型和数量来确定具体调用哪个函数。如果实参的类型和数量无法确定具体调用哪个函数,就会出现调用不明确的情况。
例如,有以下两个函数:
```
void func(int a, int b);
void func(double a, double b);
```
如果你调用`func(1,2)`,编译器无法确定是调用`func(int,int)`还是`func(double,double)`,因为它们都能接受两个int类型的参数。这时就会出现调用不明确的情况。
为了避免调用不明确,你可以显式地指定参数类型,例如`func(1.0,2.0)`就能确定调用`func(double,double)`。
阅读全文