( saxus | 2014. 04. 24., cs – 03:05 )

Na de ha nem akarunk bevezetni segédváltozót (és miért is tennénk, plusz memória és semmi szükség rá), valamint megegyezhetünk abban, hogy a kódok sorrendjét nemigazán lehet felcserélni (lévén, hogy az if (0) {} utáni felszabadításnak ugyanúgy meg kell történnie), nagyon más megoldást nem látok annál, hogy


void bizbasz(...)
{
  // blabla, ha hiba van goto err

  if (0) {
  err:
    // tralala
  }

  // asdfasdf
}

helyett ezt írod:


void bizbasz(...)
{
  // blabla, ha hiba van goto err

  goto hurra;

  err:
    // tralala
  
  hurra:

  // asdfasdf
}

Amivel effektíve ugyanott vagy, kétlem, hogy az if (0) helyett más fordulna be oda. Egyik ocsmány, mert vezérlési szerkezetbe ugrasz, másik ocsmány, mert goto halmok hegyeit tartalmazza. Ezen kívül már csak a kódduplikálás van.

----------------
Lvl86 Troll, "hobbifejlesztő" - Think Wishfully™