Привет, я запутался в вызове концепции функции с аргументами по умолчанию в случае перегрузки функции.Мой вариант использования - у меня есть две функции с одинаковым именем (перегрузка функции), и я добавил несколько аргументов по умолчанию, поэтому не ясно, какая функция будет вызвана.Пример -
fun add(a:Int, b:Int=2, c:Int=2):Int
{
return a+b+c
}
fun add(a:Int, b:Int=1):Int
{
return a+b
}
Теперь я звоню
add(5)
add(5,2)
, какой метод должен быть вызван.
, если я проверяю
fun foo(p1:Int,p2:String?=null)
fun foo(p1: Int, p2: Int = 0)
это приведет к ошибке "неоднозначность разрешения перегрузки".
Но в моем случае каждый раз fun add(a:Int, b:Int=1):Int
{
return a+b
}
называется.Так как же?