Errores, fallos, preguntas - página 2479

 
Al compilar este sprint
void Func() { return(true); }

void OnStart()
{
  if (Func())
    ;
}


este registro.

'if' - expression of 'void' type is illegal     Test8.mq5       5       3
empty controlled statement found        Test8.mq5       6       5
'return' - 'void' function returns a value      Test8.mq5       1       15
2 error(s), 1 warning(s)                3       2


Se han destacado dos errores. ¿Es normal que no vayan de arriba abajo en la fuente?

 
fxsaber:
Al compilar este sprint.


este registro.


Se han destacado dos errores. ¿Es normal que no vayan de arriba abajo en el código fuente?

¿Puede una función nula devolver un valor?

void Func() { return(true); }
 
Alexey Viktorov:

¿Puede una función nula devolver un valor?

El error fue cometido específicamente para el ejemplo. Estaba preguntando por otra cosa.

 
fxsaber:

Se han destacado dos errores. ¿Es normal que no vayan de arriba a abajo del código fuente?

Bueno, usted puede describir cualquier función al principio del código MQL, así como al final. La compilación seguirá siendo construido de acuerdo a la lógica del fabricante del compilador y sólo desarrollador sabe lo que construye allí y en qué secuencia.

La web está llena de artículos sobre los compiladores, cómo construyen las tablas de enlaces y cómo...

Esto es un compilador, no un intérprete, ¿verdad? - En el intérprete es como una ejecución de comandos de arriba hacia abajo o la lectura de la fuente por una máquina


PD: puedes comprobar que el compilador no incluye todo en el código de bytes, escribe un código de prueba, compílalo, mira el tamaño del .ex5 y luego añade en cualquier lugar (arriba o abajo) un montón de funciones diferentes y no las llames - el tamaño del ex5 no debería cambiar, no fueron incluidas en el ex5

 
Igor Makanu:

Bueno, usted puede describir cualquier función al principio del código MQL, así como al final. La compilación seguirá siendo construido de acuerdo a la lógica del compilador, lo que construye allí y en qué secuencia - sólo el desarrollador sabe, al parecer, el principal () se construye primero, todas las llamadas a la función de la principal () son seguidos por la compilación de las funciones y luego todo lo que queda.

La web está llena de artículos sobre los compiladores, cómo construyen las tablas de enlaces y cómo...

Esto es un compilador, no un intérprete, ¿verdad? - En el intérprete es como una ejecución de comandos de arriba hacia abajo o la lectura de la fuente por una máquina


PD: puedes comprobar que el compilador no incluye todo en el código de bytes, escribe un código de prueba, compílalo, mira el tamaño del .ex5 y luego añade en cualquier lugar (arriba o abajo) un montón de funciones diferentes y no las llames - el tamaño del ex5 no debe cambiar, no fueron incluidas en el ex5

En cada error hay una entrada sobre el número de fila y columna. No importa la forma que tenga todo dentro del compilador. Parece que siempre ha ordenado los errores por el número de fila que se especifica.

 
fxsaber:

Parece que siempre ha ordenado los errores por número de línea.

Nunca presté atención, siempre pinchaba donde estaba el error, no parecía importar

 
¿Por qué se pierde la conexión con MQ-Demo mientras MQ saca una nueva beta?
 
fxsaber:
¿Por qué se pierde la conexión con MQ-Demo mientras MQ saca una nueva beta?
Pero es posible probar la pérdida de conexión con el servidor. También es muy bueno que el comercio - su resolución del lado del servidor - se apague/encienda con frecuencia. También es bueno para los exámenes. También me gustaría que algunos parámetros de la cuenta se cambiaran de un lado a otro, sería genial para las pruebas. Por ejemplo, el apalancamiento, los niveles de margin call y stop out, etc.
 
Artyom Trishkin:
Pero puedes probar la pérdida de conexión con el servidor. También es muy bueno que el comercio -su resolución en el lado del servidor- se apague/encienda con frecuencia. También es adecuado para las pruebas. También me gustaría que algunos parámetros de la cuenta se cambiaran de un lado a otro, sería genial para las pruebas. Por ejemplo, el apalancamiento, los niveles de margen y stop-out, etc.

¿Te imaginas la cantidad de mocos que habría de los que no necesitan probarlo? No lo entenderán.

 
Artyom Trishkin:
Pero se puede probar la pérdida de comunicación con el servidor. También es muy bueno que el comercio - su resolución del lado del servidor - es a menudo off/on. También es adecuado para las pruebas. También me gustaría que algunos parámetros de la cuenta se cambiaran de un lado a otro, sería genial para las pruebas. Por ejemplo, el apalancamiento, los niveles de margin call y stop out, etc.

Todo esto se puede hacer a través del probador personalizado.