It is currently 23 January 2020, 7:36 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

Re: Ritornare NULL in un metodo

Postby theguru » Yesterday, 17:01

eh, questa fa parte di una delle centinaia di migliorie che vorrei vedere sul lato IDE/VCE.
faccio notare che scrivere "null"... è lungo e scomodo, esattamente come è scomodo scrivere "true" o "false"
Però, una possibilità che mi è data, ed utilizzo, è quella di modificare il nome delle due costanti nella lista "binary value", che diventano sempre "tt" e "ff", velocizzando il loro inserimento.
Avrei voluto fare lo stesso rinominando le costanti "null" che trovi per l'appunto nella lista "general constant", ma non funziona: anche se queste diventano "nn", l'inserimento avviene SOLO scrivendo per intero "null"
PS: uso il plurale perché progamma ha utilizzato un curioso sistema per queste costanti, ovvero ne esiste una per ogni tipo di dato (null char, null data, null int, null blob... etc), ed il nome di queste costanti differisce per una serie di spazi vuoti inseriti in trail...
User avatar
theguru
 
Posts: 740
Joined: 29 January 2014, 13:01


Return to Tips & Tricks - Foundation

Who is online

Users browsing this forum: No registered users and 8 guests