5

Generalmente c'è una differenza di prestazioni tra l'utilizzo di un blocco if con molti altri ifs rispetto a un blocco di caso switch? Alcune lingue o convenzioni di stile preferiscono l'una rispetto all'altra?Se blocco vs blocco Case-maiuscole

In particolare io sono curioso di Matlab, C, C++ e

+0

http://stackoverflow.com/questions/445067/if-vs-switch-speed – zod

+0

http://stackoverflow.com/questions/97987/switch-vs-if-else – zod

+1

Forse dovrei anche chiedere questo tipo di domanda, per ottenere qualche rappresentante? A chi importa dei duplicati ... –

risposta

3

Un interruttore può essere ottimizzato dal compilatore, in alcuni casi, in una tabella di ricerca e una diramazione. Questo potrebbe essere considerevolmente più veloce di più se/else-ifs.

1

In C, l'ottimizzatore può trasformare un interruttore in un JMP calcolata, in modo che possa essere più veloce. Questo è possibile perché si attiva sempre una costante intera.