[Qualsiasi domanda da principiante, per non ingombrare il forum. Professionisti, non passate oltre. Da nessuna parte senza di te - 4. - pagina 165

 
Pyro:

Ciao a tutti. Una funzione può restituire più valori (separati da virgole)?

ritorno(1,2)

O è una sciocchezza? :)) Ho solo bisogno di specificare il lotto e il prezzo dell'ordine, ma non è razionale scrivere due funzioni per questo.


La funzione può restituire un valore nel parametro passato per riferimento &
 
sergeev:

la funzione può restituire un valore al parametro passato per riferimento &


Dove posso leggerne di più? Non riesco a trovarlo nella documentazione qui sul sito. Grazie mille in anticipo.

 
Pyro:


Dove posso leggerne di più? Non riesco a trovarlo nella documentazione qui sul sito. Grazie mille in anticipo.


https://docs.mql4.com/ru/basis/variables/formal
 
Pyro:

Ciao a tutti. Una funzione può restituire più valori (separati da virgole)?

ritorno(1,2)

O è una sciocchezza? :)) Ho solo bisogno di specificare il lotto e il prezzo dell'ordine, ma non è razionale scrivere due funzioni per questo.

Si possono passare dati tra diverse funzioni di un programma attraverso variabili globali.
Il numero è illimitato.
 
Pyro:

Ciao a tutti. Una funzione può restituire più valori (separati da virgole)?

ritorno(1,2)

O è una sciocchezza? :)) Ho solo bisogno di definire il prezzo dell'ordine e il lotto, ma non è razionale scrivere due funzioni per questo.

Formalmente, non può. Cioè, la funzione restituisce un valore, ma può restituire una struttura o una classe (che è la stessa cosa). Sfortunatamente, in MQL4 è impossibile, tranne che per restituire una struttura che sta in 4 byte (int). Poi le informazioni possono essere estratte usando le operazioni bitwise. Potete anche sperimentare con DOUBLE e STRING.

sergeev:

la funzione può restituire un valore nel parametro passato per riferimento &
In questo caso, la funzione modifica il parametro. Restituisce solo il risultato di ritorno.
 
Zhunko:

... tranne che per il ritorno di una struttura che rientra in 4 byte (int). Ulteriori informazioni possono essere estratte usando le operazioni bitwise.


Potete anchetagliare un int in pezzi usando le operazioni di divisione (/) e resto della divisione (%)
 
MikeM:
Potete anchespezzettare int in pezzi con operazioni di divisione(/) e resto della divisione(%).

È più facile restituire una stringa e poi analizzarla, puoi metterci un sacco di informazioni :)
 
MikeM:
Potete anchetagliare un int in pezzi usando le operazioni di divisione(/) e di resto della divisione(%).
Questo è lo stesso ma attraverso il culo. Le operazioni frammentarie sono primarie. Sono più veloci.
 
Zhunko:

Potete anche sperimentare con DOUBLE e STRING.

STRING è promettente, maDOUBLE è dubbio.
 
Zhunko:
È la stessa cosa ma attraverso il culo. Le operazioni di pestaggio sono primarie. Sono più veloci.
Si potrebbe argomentare. Il risultato di un'operazione bitwise "veloce" deve poi essere elaborato in qualche modo.