SA0023: Valori di ritorno complessi
Determina valori di ritorno complessi che non possono essere restituiti con una semplice copia del registro del processore. Ciò include strutture, array e valori restituiti di tipo STRING
(indipendentemente dalle dimensioni dello spazio di archiviazione occupato).
Motivazione: Si tratta di un avviso di prestazione. Se vengono restituiti valori di grandi dimensioni come risultato di una funzione, metodo o proprietà, il processore li copia più volte durante l'esecuzione del codice. Ciò può portare a problemi di runtime e dovrebbe essere evitato quando possibile. Le prestazioni possono essere migliorate passando un valore strutturato come VAR_IN_OUT
a una funzione o un metodo e compilandolo nella funzione o nel metodo.
Importanza: Media
TYPE LargeStructure : STRUCT a : LINT; b : BOOL; END_STRUCT END_TYPE
FUNCTION Large_Return_Value_FUNC : LargeStructure // SA0023
Uscita in Messaggi vista:
SA0023: Valori restituiti complessi