Errores, fallos, preguntas - página 1223

 
valeryk:
#1085286 con un problema similar. En múltiples órdenes, claramente no relacionados con ninguno en particular.

Ya lo he corregido, gracias.

En unos minutos habrá una actualización.

 
murad:

Ya está corregido, gracias.

En unos minutos habrá una actualización.

Sí, está funcionando,

¿pero por qué la imagense descargacomo un archivo y no se abre en el navegador como hace 2 días? ¿O es que me pasa algo?

 
ALXIMIKS:

script estándar - "perion_converter_new" carga el kernel al 100%

Es normal, el retraso es increíble. 723 construir


No he visto que genere tantos problemas.

Ahora, en el 725 es igual (no se nota en la creación de problemas).

¿No arreglaste su código tú mismo?


P./S.: Suponiendo que estos posts puedan ser borrados ahora. Ya que el foro está en MT5.

 
valeryk:
Me pregunto si soy el único que se queda con un solo inglés en la lista de localización después de actualizar MT5 a 991.
Esto es una beta. Todo estará en su sitio en el lanzamiento.
 

Esta es una pregunta para los expertos en POO.

Hay una clase. Tiene este método de plantilla:

//+------------------------------------------------------------------+
//| Template for getting the value                                   |
//+------------------------------------------------------------------+
template<typename T>
T CGlobalVar::Value(void)
  {
   return (T)this.m_value;
  }

El compilador no se queja al compilar el archivo de definición.

Luego llamo a este método en el script:

int nRes=gVar1.Value();


Obtengo un error "no se pudo deducir el argumento de la plantilla #0".

 
denkir:

Esta es una pregunta para los expertos en POO.

Hay una clase. Tiene este método de plantilla:

El compilador no se queja al compilar el archivo de definición.

Luego llamo a este método en el script:


Obtengo un error "no se pudo deducir el argumento de la plantilla #0".

Desgraciadamente, en MQL sólo se puede tipificar una función por parámetros, ya que no se puede especificar explícitamente el tipo requerido, a diferencia de lo que ocurre en C++.
int nRes=gVal1.Value<int>();
Esta limitación se puede eludir añadiendo un parámetro falso:
//+------------------------------------------------------------------+
//| Template for getting the value                                   |
//+------------------------------------------------------------------+
template<typename T>
T CGlobalVar::Value(T)
  {
   return (T)this.m_value;
  }

int nRes=gVar1.Value((int)0);
 

Error de compilación ##

#define  MACRO( name ) \
class name##P {       \
};
MACRO( cls )
void OnStart() {}

pero por lo demás

#define  MACRO( name ) \
class P##name {       \
};
MACRO( cls )
void OnStart() {}
bien. ¿Cuál es la diferencia?
 

Error de compilación abstracta : error de generación de código

void OnStart()
{
        Print( (string)NULL ); //code generation error
        Print( (long  )NULL ); //а так - нормально
}
 
Así es, no puedes traer el cero así. No es seguro.
 
El error es que el compilador no especifica dónde se produce(__FILE__, __LINE__) y no hay transición como en la mayoría de los errores, lo que dificulta su localización y corrección