Errores, fallos, preguntas - página 1959

 
¿Cuál es la diferencia entre las dos líneas?
void OnStart()
{
  int i1 = (1 / 2) ? 1 : 0; // expression not boolean
  int i2 = (0) ? 1 : 0;     // no problem
}
 

Por el editor.

  • Si una clase está definida dentro de un método, el editor muestra erróneamente métodos de esa clase en la lista de funciones (ALT+M).
  • ¿Cómo puede el editor saber en qué función/método se encuentra ahora el cursor?
  • Si escribe la siguiente línea en el Metaeditor
    DoubleToString(GetMicro
    El tooltip de GetMicrosecondCount (¿o cómo se llama correctamente?) no aparece.


  • Cuando aparece un tooltip con opciones, no es posible desplazarse hacia abajo en la lista pulsando la tecla ARRIBA. La lista no está en bucle, lo que es incorrecto.
 

Cuando se cierra un gráfico con un EA ejecutado a mano, por favor, dar la confirmación de la acción. Ahora es muy fácil cerrar accidentalmente un gráfico con un EA.

 

Si hace mucho tiempo se realizaron operaciones con un símbolo que ahora NO está en la Observación del Mercado (incluida la parte oculta), ¿de dónde obtiene el terminal los datos de los dígitos de estos símbolos cuando muestra estas operaciones?

 
¿Es posible hacer que StringReplace sea más fácil/más lógico de usar?
int  StringReplace( 
   string&         str,              // строка, в которой будет осуществляться замена 
   const string    find,             // искомая подстрока 
   const string    replacement,      // подстрока, которая будет вставлена в найденные места 
   const uint Amount = 0             // Максимальное количество замен, 0 - все меняем.
   );

Por ejemplo, si sabemos que la cadena que hay que sustituir sólo aparece una vez, ¿por qué desperdiciar recursos informáticos buscando después de la primera sustitución?

 

Cuando ejecute la optimización, resalte la pestaña Log en caso de error. Ahora tiene que adivinar si se ha producido un error de optimización o si la optimización está tardando mucho en ejecutarse. No lo sabrás hasta que mires tú mismo el cuaderno de bitácora. El usuario debe ser notificado de inmediato si hay un error.

 
Error de comprobación
void OnInit()
{
  ExpertRemove();

  Print((bool)_StopFlag); // Реал - true, тестер - false
}
 
_StopFlag y IsStopped() no son bools. Corregir la ayuda.
void OnStart()
{
  Print(_StopFlag);   // 0
  Print(IsStopped()); // 0
  
  bool StopFlag = _StopFlag;
  
  Print(StopFlag); // false
}
 

En el probador, al retirar dinero, no es posible establecer un comentario. Por favor, añada

bool  TesterWithdrawal( 
   double money      // размер снимаемой суммы 
   const string Comment = "withdrawal"
   );
 

En el probador con agentes locales solamente, recibo este mensaje

Tester  debug version of "fxsaber\Test.ex5" detected
Tester  debug version of "MQL5\Experts\fxsaber\Test.ex5" can be optimized on local agents only, no Cloud, no Farm
Tester  OnTesterInit works too long...
Tester  OnTesterInit works too long...

Claramente es un error.