Hirdetés

Új hozzászólás Aktív témák

  • sztanozs
    veterán

    Innen:

    Bármennyire is adott azonban a lehetőség a Goto használatára, ne használjuk. Nincs olyan probléma, amely ne lenne megoldható nélküle is, használatával azonban áttekinthetetlenné válik a programunk, és ezzel a hibalehetőségek száma növekszik.

    Továbbá:

    A Goto parancs sok nyelvben létezik, használatát azonban el kell kerülni. Léteztek olyan ősnyelvek, amelyekben nélkülözhetetlen volt, a mai magasszintű nyelvekbe azonban többnyire hagyománytiszteletből került be, nincs rá szükség. Léteznek olyan nyelvek is, amelyekből hiányzik ez a parancs.

    Ezért hasonlítom össze a C-t meg a Pascalt(meg minden olyan nyelvet, amiben létezik). Mindenesetre a fenti idézetek sem Stroustrup nézőpontját hangoztatják, hanem László Józsefét. Sőt, a második idézet egyértelműen kimondja, hogy léteznek olyan nyelvek is amelyekből hiányzik. Ezek szerint azokban a nyelvekben nem is lehet programozni, igaz?

    Igazából azt sem tudom min vitatkozol...
    Csak annyit írtam (viccesen), hogy ha a continue-t tiltják, akkor miért nem tiltják a break-et is... amúgy implementálva mind-mind goto (ráadásul az is előrefelé, nem hátra - pl for (int i=k; i>l; i+=m).

    // értékadás
    int ix = k;
    :loop_start
    //kilépési feltétel
    if n>l goto outside_of_loop;
    /*
    utasítások
    */
    // continue
    if condition_continue goto loop_increment;
    /*
    még utasítások
    */
    // break
    if condition_break goto outside_of_loop;
    /*
    még utasítások
    */
    :loop_increment
    i += m;
    goto loop_start;
    :outside_of_loop

Új hozzászólás Aktív témák