При написании функции у меня всегда возникает такая путаница, нужно ли сначала проверять ошибки и объявлять переменные позже (или) назначать параметры локальным переменным, а затем проверять наличие ошибок. Какой из следующих способов является предпочтительным и почему? Я обычно придерживаюсь первого типа.
void DoSomething1(Object x, Object y){
  // All sort of error checking goes here
  if IsError(x) return;
  if IsError(y) return;
  // Variable declaration
  int i,j;
  Object z = x;
}
void DoSomething2(Object x, Object y){
  // Variable declaration
  int i,j;
  Object z = x;
  // All sort of error checking goes here
  if IsError(z) return;
  if IsError(y) return;
}
