It is currently 22 January 2020, 2:23 Advanced search

Ritornare NULL in un metodo

Domande e risposte su come utilizzare Instant Developer Foundation al meglio

Ritornare NULL in un metodo

Postby f.faleschini » 15 January 2020, 14:38

In un metodo di una classe che mi torna un valore time ho il problema che il valore potrebbe non esserci e non so bene come gestirlo.

mi spiego con un esempio:


Code: Select all
function time Impiegato.calcolaOraDiInizio()

è un metodo che ritorna l'ora in cui l'impiegato inizia a lavorare

Ora l'impiegato potrebbe essere anche in ferie, in quel caso il valore di ritorno vorrei che fosse null, perché se ritorno 00:00, potrebbe significare "Inizia a mezzanotte".

Mi pare che non ci sia null in Inde (come in Delphi, che conosco, dove c'è nil ad esempio).

Ora se non posso restituire Null (o nil) posso fare qualcosa del tipo

Code: Select all
function boolean Impiegato.calcolaOraDiInizio(
inout time Result
)


se la funzione torna True posso dire che il parametro inout Result è buono.

Come fate voi in questi casi?

Grazie.
f.faleschini
 
Posts: 516
Joined: 12 April 2017, 9:09

Re: Ritornare NULL in un metodo

Postby r.bianco » 15 January 2020, 15:38

MI pare si possa tornare NULL.
only work and no play makes jack a dull boy
r.bianco
 
Posts: 4007
Joined: 8 November 2010, 16:46

Re: Ritornare NULL in un metodo

Postby Dipa » 16 January 2020, 8:09

Sì, il NULL funziona ed è la strada che preferisco.
In altre tipologie di funzioni e/o casistiche si utilizza anche valori convenzionali, tipo -1 quando la funzione ritorna degli interi.
Maurizio Di Pasquale
Software developer
User avatar
Dipa
 
Posts: 136
Joined: 1 July 2014, 14:01

Re: Ritornare NULL in un metodo

Postby f.faleschini » 16 January 2020, 10:05

Sì grazie.

E' lo stesso che usa inde quando fai una nuova variabile oggetto
var cliente = null

mi cofondeva il fatto che non proponga null come una cosa a sè quando si scrive null, ma dice "inserisci costante null", che sembrerebbe la stringa "null", ma non è così,avrei preferito che null fosse evdenziato in modo più evidente.

Faccio una proposta di modifica in tal senso, la PRP000569 in cui c'è questo screenshot:
Image

spero sia condivisible.

Ciao.
f.faleschini
 
Posts: 516
Joined: 12 April 2017, 9:09


Return to Tips & Tricks - Foundation

Who is online

Users browsing this forum: No registered users and 16 guests

cron