Я хочу копаться в том, является ли это неоднозначность или дополнительная функция, которая обеспечивается:Метод Перегрузки с другим типом возвращаемого
public class Foo
{
public int Bar(){
//code
}
public string Bar(int a){
//code
}
}
Любой имеющий опыт работы с этим, перегрузка на тип возвращаемого значения с различными параметры должны быть плохой практикой, не так ли?
Но если перегрузка была выполнена на основе типа возврата, то почему это не работает.
public class Foo
{
public int Bar(int a){
//code
}
public string Bar(int a){
//code
}
}
Как это будет не в состоянии решить, какие функции для вызова 1-й или второй, если мы называем obj.Bar(); , это должно закончиться ошибкой, если у кого-нибудь есть представление об этом, почему он позволяет запускать первый фрагмент кода.
Вы можете сделать свой вопрос более ясным? Я думаю, что все неправильно поняли ваш вопрос. –
@ChrisLava Какое другое возможное значение есть, кроме заданного в ответах? – Rotem
@Rotem он говорит, что он знает, почему второй фрагмент кода выходит из строя («неспособный решить, какую функцию вызывать»). Поэтому он это понимает. Но мне кажется, что он спрашивает, является ли неправильная практика «перегрузкой по типу возврата с разными параметрами» (первый фрагмент кода). –