Autore Topic: [C++] uscire da due cicli annidati con break  (Letto 6828 volte)

Offline clros

  • ASM Lover
  • *****
  • Post: 457
  • Karma: +3/-1
    • Mostra profilo
Re: [C++] uscire da due cicli annidati con break
« Risposta #15 il: 23 Dicembre 2011, 15:34:48 »
Citazione da: "AmigaCori"

EDIT
Facciamo una cosa, si ha diritto al massimo ad un "GOTO" ogni 1000 linee di codice scritto  :mrgreen:

Sapete di cosa mi sono accorto? che all'uscita dai due cicli non dovevo fare assolutamente nulla! Per cui ho solo messo un normale return, senza usare alcun goto!!
Ce l'ho fatta! :D :D :D
« Ultima modifica: 01 Gennaio 1970, 02:00:00 da Guest »
Claudio CP La Rosa

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re: [C++] uscire da due cicli annidati con break
« Risposta #16 il: 23 Dicembre 2011, 16:34:37 »
usare un return in mezzo ad una funzione (come anche le istruzioni break e continue dentro i cicli) viola il paradigma della programmazione strutturata tanto quanto il goto :-D
« Ultima modifica: 01 Gennaio 1970, 02:00:00 da Guest »

Offline clros

  • ASM Lover
  • *****
  • Post: 457
  • Karma: +3/-1
    • Mostra profilo
Re: [C++] uscire da due cicli annidati con break
« Risposta #17 il: 23 Dicembre 2011, 17:34:06 »
Citazione da: "TheKaneB"
usare un return in mezzo ad una funzione (come anche le istruzioni break e continue dentro i cicli) viola il paradigma della programmazione strutturata tanto quanto il goto :-D

E Vabbè...il fatto di non chiamarsi "goto" ha cmq un qualcosa che lo rende migliore! :D
« Ultima modifica: 01 Gennaio 1970, 02:00:00 da Guest »
Claudio CP La Rosa

Offline clros

  • ASM Lover
  • *****
  • Post: 457
  • Karma: +3/-1
    • Mostra profilo
Re: [C++] uscire da due cicli annidati con break
« Risposta #18 il: 23 Dicembre 2011, 18:54:30 »
Citazione da: "dsar"
Sono senza adsl, quindi non posso più frequentare attivamente.

Usare il goto rende il codice non strutturato e non permette al compilatore di generare un data flow sensitive. Di conseguenza usando goto (compresi continue, break e return) si genera un data flow insensitive che il compilatore deve poi ottimizzare con un global e local data flow analysis
Grazie dsar. Questo concretamente cosa vuol dire? Maggiori oneri al compilatore per l'ottimizzazione o impossibilità di ottimizzare? E' così pesante l'uso del goto? La mia ipotesi sull'uso del goto invece dell'inserimento di due condizioni nei due cicli, riguardo la "velocità" di esecuzione del codice, è sbagliata?
« Ultima modifica: 01 Gennaio 1970, 02:00:00 da Guest »
Claudio CP La Rosa

Offline TheKaneB

  • Human Debugger
  • *****
  • Post: 5292
  • Karma: +20/-23
    • Mostra profilo
    • http://www.antoniobarba.org
Re: [C++] uscire da due cicli annidati con break
« Risposta #19 il: 23 Dicembre 2011, 20:33:38 »
Per il 99% dei casi, da un punto di vista del povero programmatore, il compilatore può allegramente tirare le cuoia  :twisted:

Se il codice diventa un casino da mantenere e debuggare, lui ci guadagna 3 cicli di clock, io ci perdo 3 cm^2 di capelli  :lol:
« Ultima modifica: 01 Gennaio 1970, 02:00:00 da Guest »

Offline clros

  • ASM Lover
  • *****
  • Post: 457
  • Karma: +3/-1
    • Mostra profilo
Re: [C++] uscire da due cicli annidati con break
« Risposta #20 il: 23 Dicembre 2011, 20:45:20 »
Citazione da: "TheKaneB"
Per il 99% dei casi, da un punto di vista del povero programmatore, il compilatore può allegramente tirare le cuoia  :twisted:

Se il codice diventa un casino da mantenere e debuggare, lui ci guadagna 3 cicli di clock, io ci perdo 3 cm^2 di capelli  :lol:

Per me non è un problema; li sto perdendo tutti!
(però, per non apparire distratto, non dico in giro che sono io a perdere i capelli; dico che sono i capelli a perdere me! :D )
« Ultima modifica: 01 Gennaio 1970, 02:00:00 da Guest »
Claudio CP La Rosa

AmigaCori

  • Visitatore
Re: [C++] uscire da due cicli annidati con break
« Risposta #21 il: 24 Dicembre 2011, 01:14:50 »
Citazione da: "TheKaneB"
Per il 99% dei casi, da un punto di vista del povero programmatore, il compilatore può allegramente tirare le cuoia  :twisted:

Se il codice diventa un casino da mantenere e debuggare, lui ci guadagna 3 cicli di clock, io ci perdo 3 cm^2 di capelli  :lol:

...son 5 minuti che fisso la tastiera, il monitor...ed il muro per cercare di riordinarmi la testa e buttare sul forum un commento...ma non ci riesco perche' IMHO hai scritto una di quelle frasi incommentabili per quanto sono lollose  :lol:

Senti, se dovessi mai scrivere un libro sulla programmazione mi prenoto la copia in anticipo :D

@dsar
Ah ecco...infatti mi domandavo perche' non rispondessi ad alcuni thread recenti, tipo il NOS, cioe' il NsaOS :D
Vabbe', noi siamo sempre qui' :)
« Ultima modifica: 01 Gennaio 1970, 02:00:00 da Guest »

Offline clros

  • ASM Lover
  • *****
  • Post: 457
  • Karma: +3/-1
    • Mostra profilo
Re: [C++] uscire da due cicli annidati con break
« Risposta #22 il: 24 Dicembre 2011, 09:19:12 »
Citazione da: "AmigaCori"

...son 5 minuti che fisso la tastiera, il monitor...ed il muro per cercare di riordinarmi la testa e buttare sul forum un commento...ma non ci riesco perche' IMHO hai scritto una di quelle frasi incommentabili per quanto sono lollose  :lol:


Sembra Tanenbaum! :D
« Ultima modifica: 01 Gennaio 1970, 02:00:00 da Guest »
Claudio CP La Rosa

Tags: