Errores, fallos, preguntas - página 1814

 
Alexey Kozitsyn:

Error en la determinación del tipo de parámetros del indicador ENUM_DATATYPE.

Podemos ver que TYPE_COLOR(#6) muestra TYPE_UINT en lugar de TYPE_DATETIME (#9), TYPE_LONG en lugar de TYPE_FLOAT(#12), TYPE_DOUBLE en lugar de TYPE. Aunque los tipos TYPE_COLOR, TYPE_DATETIME y TYPE_FLOAT están descritos en la enumeración y deberían tener sus propios valores.

Sin embargo, se puede ver la lógica en el resultado. Incluso se puede explicar float->double. Yo truncaría aún más el número de tipos de salida. En este sentido, el ENUM_DATATYPE parece demasiado amplio.

Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Идентификаторы типов данных
Документация по MQL5: Стандартные константы, перечисления и структуры / Константы индикаторов / Идентификаторы типов данных
  • www.mql5.com
Стандартные константы, перечисления и структуры / Константы индикаторов / Идентификаторы типов данных - справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
fxsaber:

Sin embargo, la lógica del resultado es visible. Incluso float->double es explicable. Yo truncaría aún más el número de tipos de salida. En este sentido, ENUM_DATATYPE parece demasiado amplio.

No veo ninguna lógica en describir explícitamente el enumerador ENUM_DATATYPE en la documentación y que cada miembro tenga su propio número. Tampoco veo lógico mirar el tamaño en bytes de los tipos float y double.
 
Alexey Kozitsyn:
No veo la lógica cuando la documentación describe explícitamente el enumerador ENUM_DATATYPE y cada miembro tiene su propio número. Tampoco veo la lógica de mirar el tamaño en bytes de los tipos float y double.
Bueno, yo dejaría sólo los tipos entero (int) y "real" (doble) - de los números.
 
fxsaber:
Bueno, yo sólo dejaría los tipos int y double - de números.
El ejemplo más sencillo: según su lógica, un tipo de variable es int. Se crea una variable de este tipo. Ahí debes escribir valor = 2. Pero en realidad el tipo era bool. ¿Qué hacer entonces?
 
Alexey Kozitsyn:
El ejemplo más sencillo: Ha obtenido una variable de tipo int por su lógica. Se crea una variable de este tipo. Ahí debes escribir valor = 2. Pero el valor es realmente bool. ¿Qué hacer entonces?
void f( bool ) {}

void OnStart()
{
  f(2);
}
 
fxsaber:
void f( bool ) {}

void OnStart()
{
  f(2);
}
Bien, pero estarás operando con un valor de 1. Habrá muchos errores difíciles de encontrar.
 
Alexey Kozitsyn:
Bien, pero estarás operando con un valor de 1. Habrá muchos errores difíciles de encontrar.
No habrá errores. Ni siquiera se pueden inventar.
 
fxsaber:
No habrá errores. Ni siquiera se pueden inventar.
Que no se pueda hacer algo no significa que no se pueda. Esperemos la respuesta de la SD.
 
Alexey Kozitsyn:
Que no se pueda hacer algo no significa que no se pueda. Esperemos la respuesta de la SD.
Los promotores tienen su propia opinión. Realmente no se puede llegar a una situación errónea en la variante int&double.
 
Error de desinicialización. ¡Solicitud#1677278!