Позвольте мне начать с того, что я не защищаю этот подход, но я видел его недавно, и мне было интересно, есть ли имя, которое я мог бы использовать, чтобы указать на виновную сторону. Так вот.
Теперь у вас есть метод, и вы хотите вернуть значение. Вы также хотите вернуть код ошибки. Конечно, исключения - намного лучший выбор, но по какой-то причине вы хотите вместо этого код ошибки. Помни, я играю здесь адвоката дьявола. Итак, вы создаете общий класс, например:
class FunctionResult<T>
{
public T payload;
public int result;
}
И затем объявите свои функции следующим образом:
FunctionResult<string> MyFunction()
{
FunctionResult<string> result;
//...
return result;
}
Одним из вариантов этого шаблона является использование перечисления для кода ошибки вместо строки. Теперь вернемся к моему вопросу: есть ли имя для этого, и если да, то что это такое?