Vai al contenuto
PLC Forum


Parametri nelle funzioni in ST


Sklerato

Messaggi consigliati

In linguaggio ST c'è un modo per fare funzioni con parametri opzionali oppure che possano accettare 1 solo parametro ma di tipo diverso? Oppure l'overloading delle funzioni?

 

Io per esempio avrei esigenza di fare uno funzione di log che possa accettare una stringa e una variabile numerica di qualunque tipo (non so quale variabile avrò esigenza di loggare).

Per esempio la funzione SQRT() accetta in ingresso qualunque tipo di parametro, come dice la documentazione: "La variabile di ingresso può essere qualsiasi tipo di dati numerici di base, la variabile di uscita deve essere di tipo REAL o LREAL".
Se voglio creare io una funzione simile, il tipo di dato in ingresso deve essere ben preciso e non si può sgarrare!
L'unica soluzione che ho trovato è aspettarmi sempre una LREAL (cioè il tipo con la size massima) per poi passargli anche variabili meno grosse, quindi c'è un casting implicito... ma non ci saranno controindicazioni?

 

La cosa ancor più bella sarebbe poter usare anche un numero di parametri variabile, come la funzione printf() del C, ma forse sto esagerando ;)

 

Modificato: da Sklerato
syntax error
Link al commento
Condividi su altri siti


Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora
×
×
  • Crea nuovo/a...