Creare Nuovi Operatori in Swift

Abbiamo già visto qualche giorno fa come ridefinire un operatore in Swift, vedremo oggi come creare un nuovo operatore custom.

Vogliamo poter digitare il simbolo della radice quadra seguito da un Double e ottenere (appunto) la radice quadra del valore, come mostrato di seguito

Definire l’operatore √

Prima di tutto dobbiamo dichiarare che il simbolo  dovrà essere interpretato dal compilatore come un operatore di tipo prefix (ovvero un operatore che è seguito dal valore da elaborare).

A questo punto possiamo associare una funzione al nostro operatore, essendo l’operatore di tipo prefix, la funzione riceverà un solo parametro.

Proviamo ora a usarlo

Operatori di tipo infix

Swift permette anche di definire un operatore che prenda 2 valori e li elabori per produrre un certo risultato.

Ad esempio possiamo creare un operatore che va inserito tra 2 stringhe e che restituisce tutti i caratteri che le stringhe hanno in comune (spazi esclusi, senza ripetizioni e senza tener conto delle differenze tra maiuscole e minuscole).

Ecco il codice

Possiamo ora testarlo scrivendo

Esercizio

Come esercizio vi invito a scrivere ora un operatore di tipo postfix (non l’abbiamo visto in questo articolo ma la sintassi è simile a quella dell’operatore prefix, in questo caso però va posizionato dopo il valore).

L’operatore prende in input la stringa che viene digitata prima di esso e restituisce il numero delle vocali al suo interno.

Quindi digitando questo codice

dovremmo ottenere come risultato l’intero 2.

Se avete difficoltà scrivetemi usando i commenti qui sotto mentre se avete trovato utile l’articolo potete condividerlo con i pulsanti social.

Buon coding!

Luca Angeletti

Trainer • Developer • Writer

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *