Tutte le domande dei nuovi arrivati su MQL4 e MQL5, aiuto e discussione su algoritmi e codici - pagina 1924

 
PapaYozh #:

Le matrici e le strutture sono SEMPRE passate a una funzione per riferimento.

Stiamo parlando della documentazione, della sua usabilità quando la si conosce), dei riferimenti a un array / struttura quando li si passa a una funzione, senza argomento.)))

In generale, naturalmente si può indovinare, supporre... ma il soldato non è sempre chiaro, anche un ordine diretto))) Perciò gli si chiede di ripeterlo)))

 
Valeriy Yastremskiy #:

È sorta una domanda.


#define Symbol  _Symbol

int OnInit()
  {
 
Ask=SymbolInfoDouble(Symbol,SYMBOL_ASK);        // Так работает
Ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK);      // Почему ошибку скобок пишет? 

Divertente errore di copia-incolla)))

 
Valeriy Yastremskiy #:

Errore divertente nel copia-incolla)))

La macro corrispondeva al nome della funzione

 
PapaYozh #:

La macro corrispondeva al nome della funzione

#define Symbol()  _Symbol       // скобки были пропущены

int OnInit()
  {
 
Ask=SymbolInfoDouble(Symbol,SYMBOL_ASK);        // Так перестанет работать
Ask=SymbolInfoDouble(Symbol(),SYMBOL_ASK);      // Так начнет

No, la sostituzione ha dato il risultato sbagliato.

_Symbol()              // скобки лишние
 
PapaYozh #:

Un array e una struttura sono SEMPRE passati a una funzione per riferimento.

Ho detto qualcosa di diverso?

Ho scritto"se qualcosaviene passato a una funzione per riferimento...".

Quindi una persona dovrebbe capire immediatamente che la struttura è probabile che venga riempita nella funzione. Ma qui si dovrebbe guardare l'aiuto - per cosa è passata la struttura.

Non intendevo scrivere una spiegazione dettagliata con tutte le conclusioni necessarie, ma solo mostrare alla persona come capire dove la struttura può essere riempita. Può essere o non essere.

Non ho intenzione di scrivere un'intera conferenza qui. Non si trattava di ciò che viene SEMPRE passato per riferimento, ma SE qualcosa viene passato per riferimento, dovreste leggere attentamente la descrizione di questa funzione - per sapere per cosa viene passata la struttura.

 

Il punto è che gli array e le strutture non vengono mai passati a una funzione MQL se non per riferimento.

Cioè, non c'è nessun "IF" rispetto agli array e alle strutture.

 
PapaYozh #:

Il punto è che gli array e le strutture non vengono mai passati a una funzione MQL se non per riferimento.

Cioè, non c'è nessun "IF" rispetto agli array e alle strutture.

Probabilmente non sono bravo a spiegarmi in russo.

Se un array, una struttura o una variabile viene passata in una funzione...

Non "se è passato per riferimento"...

È "se è passato per riferimento". Perché potrebbe non essere approvato.

E dato che sono sempre passati solo per riferimento, è questo che intendevo:"se qualcosa viene passato per riferimentoin una funzione "...

Ilcolore indica il significato.

Sono stato chiaro adesso?

La cosa più interessante è che la persona a cui l'ho scritto ha capito tutto perfettamente dalla prima volta. Quindi forse non sono io a non essere chiaro?

 
Artyom Trishkin #:

Non devo essere bravo ad esprimermi in russo.

Se un array, una struttura o una variabile viene passata a una funzione...

Non "se passato per riferimento"...

Ma se è passato. Perché potrebbe non essere approvato.

E dato che sono sempre passati solo per riferimento, è questo che intendevo:"se qualcosa viene passato per riferimentoin una funzione "...

Ilcolore indica il significato.

Sono stato chiaro adesso?

La cosa più interessante è che la persona a cui l'ho scritto ha capito tutto perfettamente dalla prima volta. Quindi forse non sono io quello che non ci sa fare?

Non essere così nervoso.

 
PapaYozh #:

Non essere così nervoso.

Spiego sempre con calma alle persone quello che ho detto, così non ci sono malintesi. O vuoi pensare che sono nervoso? Sbagliato, allora.

Farmi incazzare è come dipingere il cielo ;)

 
Non voglio pensarlo e, inoltre, non vorrei far incazzare nessuno, ma la tua citazione eccessiva è un po' allusiva.