[ARCHIVO] Cualquier pregunta de novato, para no saturar el foro. Profesionales, no pasen de largo. En ninguna parte sin ti - 3. - página 610

 
ruslanchik:
¿cuál es el cálculo por delante de a=5 o a=10?
Bien el programa se ejecuta de arriba a abajo) Primero 5, luego 10.
 
Solree:
Bueno, el programa se ejecuta de arriba a abajo) Primero 5, luego 10.
Ya veo... actualizará los parámetros "obvios" a los dados.
 
ruslanchik:
Bien, gracias... en resumen actualizará los parámetros "explícitos" a los dados

Cuando los parámetros se pasan a una función por referencia, son las variables que se pasan a la función las que se modifican.

Suponga que necesita devolver más de un parámetro de una función. Pásalos a la función por referencia. Las variables que se establezcan fuera de la función -las variables que le pasaste por referencia- se modificarán en la función.

Si tienes tres variables e, f y g, si el appersand en la descripción de la función antes del nombre de la variable en sus parámetros, se cambiarán las variables que pusiste en los parámetros al llamar a la función.


int func (int a , int &b , int &c ) {

a=10;
b=20;
c=30;
return(a);

}


Al llamar a una función:

int e=40 , f=50, g=60;

int d=func (e, f, g);

d será igual a 10 (la función devolverá e modificado)

f será igual a 20

g será igual a 30

f y g se pasan aquí por referencia

 
artmedia70:

Cuando los parámetros se pasan a una función por referencia, son las variables que se pasan a la función las que se modifican.

Suponga que necesita devolver más de un parámetro de una función. Pásalos a la función por referencia. Las variables que se establezcan fuera de la función -las variables que le pasaste por referencia- se modificarán en la función.

Si tienes tres variables e, f y g, si el appersand en la descripción de la función antes del nombre de la variable en sus parámetros, se cambiarán las variables que pusiste en los parámetros al llamar a la función.


int func (int a , int &b , int &c ) {

a=10;
b=20;
c=30;
return(a);

}


Al llamar a una función:

int e=40 , f=50, g=60;

int d=func (e, f, g);

d será igual a 10 (la función devolverá la e modificada)

f será igual a 20

g será igual a 30

f y g se han pasado por referencia aquí

¿Dónde puedo conseguir un Helpup sobre un tema similar ... con ejemplos .... Me senté a hacer algo, pero me di cuenta de que no puedo construir un sistema sin referencias .... Por cierto, la ayuda también de S.K. (Sergei Kovalev) tampoco tiene mucho que ver con el tema
 
ruslanchik:
¿Dónde puedo conseguir un Helpup sobre un tema similar ... con ejemplos .... Me senté a hacer algo, pero me di cuenta de que no puedo construir un sistema sin referencias ....
Por
cierto, el libro de autoayuda de S.K. tampoco contiene mucha información

Mira con atención en el DOCU - hay de todo, sólo hay que saber leerhttps://docs.mql4.com/ru/basis/variables/formal
 
FAQ:

Mira atentamente el DOCU - Allí está todo, sólo hay que saber leerhttps://docs.mql4.com/ru/basis/variables/formal
y qué es exactamente lo que me pega el ojo si no te has dado cuenta tú mismo..... "por favor, explique cómo "pasar parámetros por referencia" la ayuda en línea dio sólo pistas sobre cómo usarlo pero no es muy fácil de averiguar... de la página 609 "
 

Es posible pasar parámetros por referencia. En este caso, la modificación de dichos parámetros afectará a las variables correspondientes en la función llamada pasada por referencia. No se pueden pasar elementos de arrays por referencia. Los parámetros pueden ser pasados por referencia sólo dentro de los límites de un único módulo, tal oportunidad no se proporciona para las funciones de la biblioteca. Para especificar que un parámetro se pasa por referencia, se debe colocar el modificador & después del tipo de datos.

Ejemplo:

void func(int& x, double& y, double& z[]) { double calculated_tp; ... for(int i=0; i<OrdersTotal(); i++) { if(i==ArraySize(z)) break; if(OrderSelect(i)==false) break; z[i]=OrderOpenPrice(); } x=i; y=calculated_tp; }

Los arrays también se pueden pasar por referencia, todos los cambios se reflejarán en el array original. A diferencia de los parámetros simples, los arrays también se pueden pasar por referencia en las funciones de la biblioteca.

Los parámetros pasados por referencia no pueden ser inicializados con valores por defecto.

 
Buenas noches. Estoy tratando de entender las barras. Quiero escribir un script para analizar las barras diarias. Estoy tratando de analizar el historial de las barras y el porcentaje de su aparición. Quiero recopilar estadísticas no sólo para todo el historial, sino también para un periodo de tiempo seleccionado. He intentado buscar un script pero hay demasiados. Me gustaría pedir un enlace a un script de este tipo o dar consejos sobre cómo lidiar con los bares, ya que no tengo experiencia.
 
ChAnton:
Buenas noches. Estoy tratando de entender las barras. Quiero escribir un script para analizar las barras diarias. Estoy tratando de analizar el historial de las barras y el porcentaje de su aparición. Quiero recopilar estadísticas no sólo para todo el historial, sino también para un periodo de tiempo seleccionado. He intentado buscar un script pero hay demasiados. Me gustaría pedir un enlace a un script de este tipo o dar consejos sobre cómo lidiar con los bares, ya que no tengo experiencia.
¿Tiene experiencia en programación? Si no lo haces, deberías leer el libro de texto y la documentación (los enlaces están en la parte superior de la página) y aprender lo básico... Más información sobre bares aquí https://docs.mql4.com/ru/predefined/variables
 
Hola, entiendo que OrderOpenTime() devuelve el número de segundos transcurridos desde las 00:00 del 1 de enero de 1970. ¿Cómo se convierte en tiempo normal?