Errores, fallos, preguntas - página 1809

 
fxsaber:
No lo he comprobado.
datetime NewTimeCurrent( void )
{
  static ulong PrevStartTime = GetMicrosecondCount();
  static datetime PrevTimeCurrent = TimeCurrent(); // TimeTradeServer()
  
  const datetime NewTimeCurrent = TimeCurrent(); // TimeTradeServer()
  const ulong NowTime = GetMicrosecondCount();
  
  if (PrevTimeCurrent < NewTimeCurrent)  
  {
    PrevTimeCurrent = NewTimeCurrent;
    
    PrevStartTime = NowTime;
  }
  
  return(PrevTimeCurrent + (datetime)((NowTime - PrevStartTime) / 1000000));
}
Gracias, pero no creo que tenga sentido tanta precisión todavía, sobre todo porque el tiempo será de todas formas "no real", sino aproximado y dependerá de muchos factores. Para ser exactos, necesitamos la posibilidad de obtener la hora del servidor, es decir, si pongo SymbolInfoDouble( _Symbol, SYMBOL_SESSION_TIME_INTEREST ), entonces puedo obtener la hora inmediatamente, por ejemplo con SymbolInfoInteger( _Symbol, SYMBOL_SESSION_TIME_INTEREST ) (con precisión de milisegundos). ¡Entonces estarás bien!
 
fxsaber:
Podrías ser más exacto. Por ejemplo, podría recorrer todos los símbolos consultando SymbolInfoTick (+ CopyTicks). A partir de ahí, tacha el tiempo en milisegundos. No entiendo qué utilidad práctica puede tener.

Es sencillo: ¡el momento! Se trata de todo ello. Ahora hay muchos datos disponibles: garrapatas, sentimientos, cristales. El tiempo en milisegundos sólo está disponible para las garrapatas. ¿Y la hora de llegada del resto de los datos? El vidrio no lo tiene. ¡El sentimiento tampoco lo tiene! En consecuencia, si recogemos todos los datos juntos, ¡no podremos sincronizarlos! No es posible hacer un análisis complejo. No entiendo por qué los desarrolladores no le prestan la debida atención. Tienen los datos, pero es imposible trabajar con ellos correctamente. Así que tenemos que hacer algo, pero incluso las "muletas", como resultó, no siempre funcionan correctamente.

 
El error de TimeCurrent( ) ha sido corregido, dijeron que estaría en MQ-Demo hoy.
 
fxsaber:
Hace tiempo que se necesita un análogo en milisegundos de TimeCurrent, con su reflejo en la GUI.
+1. Pero para los valores que he descrito anteriormente, sería mejor hacer una opción de búsqueda por separado.
 
Alexey Kozitsyn:
El error de TimeCurrent() ha sido corregido, dijeron que estaría en MQ-Demo hoy.
Sería bueno convertirlo en una regla
 
fxsaber:
Sería bueno convertirlo en una regla
Es discutible, ya que nadie más que el creador de la aplicación entendería nada. Creo que las descripciones detalladas son suficientes.
 

Error de compilación: no se puede definir ninguna función posteriormente, aunque se haya declarado antes

int f(); //объявление
static int i1 = f(); //Error: 'f' - function must have a body
int g()
{
static int i2 = f(); //нормально //даже если нет объявления
    return i2;
}
void OnStart()
{
    g();
}
int f() { return 0; }
 
A100:

Error de compilación: No se puede definir una función posteriormente, aunque haya una declaración antes

int f(); //объявление
static int i1 = f(); //Error: 'f' - function must have a body
int g()
{
static int i2 = f(); //нормально //даже если нет объявления
    return i2;
}
void OnStart()
{
    g();
}
int f() { return 0; }

Para mí tiene sentido.

Pero no está claro por qué no hay error en este caso.

int f(); //объявление
static int i1 = f(); //Error: 'f' - function must have a body
int g()
{
static int i2 = f(); //нормально //даже если нет объявления
    return i2;
}

class A
{
public:  
  A() { f(); }
};

A a;


void OnStart()
{
    g();
}
int f() { return 0; }
 
fxsaber:

Me parece lógico.

Pero no está claro por qué no hay error aquí.

Un error sólo es lógico si hay algún tipo de colisión. Si todo se hace correctamente, los errores innecesarios restan flexibilidad

class A; //не зря же такую запись придумали
 
Han vuelto a hacer algo mal.

Compilado en la versión 1531. Al arrancar tengo:

2017.02.16 18:55:19.101 MQL5 'TradePanel.ex5' tiene una nueva versión no soportada, por favor actualice su terminal de cliente

Menos mal que no es en una cuenta real.