2015-07-24 10 views
5

Sto giocando con questo bellissimo linguaggio e ho visto una funzione chiamata noop.Dove non si può usare a Ceylon

Come la documentazione dice che è una funzione di vuoto che non fa nulla !!

Quindi perché dovrei usare una funzione che non fa nulla? E 'per l'aggiunta di "Nop" in assembly (per pipeline, ecc.) Ma questo sarebbe troppo basso, no?

+0

hmmmm perché downvote, la documentazione non dice alcuna usecases lo fa? – niceman

+0

sì, assolutamente ingiustificato. Ma dovresti correggere il titolo e il commento come 'noop', non' noob'. –

+0

grazie @JohnVasileff, corretto il mio errore di battitura :) – niceman

risposta

8

noop() può prendere il posto di qualsiasi funzione void (o Anything di ritorno). Quindi è utile utilizzare come valore se si sta chiamando una funzione o si crea un oggetto che richiede di passare in un gestore di eventi o una funzione di callback, ma non si è interessati a rispondere all'evento.

7

noop() è utile anche come valore di default di un un parametro opzionale di una funzione, ad esempio:

void foo(void bar(Integer i) => noop(i)) {} 

Oppure:

void foo(Anything(Integer) bar = noop) {} 
Problemi correlati