Errores, fallos, preguntas - página 2954

 
MetaQuotes:

Por favor, actualice a la versión beta 2775.

Esto se ha arreglado.

//+------------------------------------------------------------------+
void OnStart()
  {
   struct s_My
     {
      int            a;
      double         b;
      long           c;
     } my1;

   my1.a=33;
   my1.b=44.44;
   my1.c=-55;


   Print(my1.c);
  }


También está este

 
MetaQuotes:

Por favor, actualice a la versión beta 2775.

Esto se ha arreglado.

Gracias, me ha ayudado. Pero en esta beta no se puede ejecutar el probador visual, por si acaso.

up: ¿no hay una función para retroceder de la beta a la versión? sería muy útil.

 

Error de compilación


Antes se compilaba bien - no hay error

 
A100:

Error de compilación

Antes se compilaba bien - no hay error

Lo tuve cuando me quedé sin espacio en el disco.

 
Vladimir Pastushak:

Esto me ocurrió cuando me quedé sin espacio en el disco.

Hay espacio libre más que suficiente - después de varios intentos fallidos guardé el archivo compilado en la misma carpeta con otro nombre y todo fue normal. El propio archivo .ex5 de la versión anterior (script) también se ejecuta bien - sin errores

 
Error de compilación no corregido
template<typename T>
class A {
public:
        void f( int ) {}      //(1)
};
class B : public A<int> {
public:
        void f( int, int ) {} //(2)
};
void OnStart()
{
        B b;
        b.A<int>::f( 1 ); //Error: 'A' - undeclared identifier
}
 
A100:
Un resultado contradictorio:

Así que has "superado" a ULONG

Print(string(ULONG_MAX));
2021.02.07 23:09:41.060 SFQ_data (Si-3.21,M1)   18446744073709551615
 
prostotrader:

Así que has "pasado" de ULONG

Sí, se ha encontrado una regla no obvia para que en caso de desbordamiento se devuelva el valor extremo

 

Si Expert se convierte en Indicador, después de la recompilación, al menos el icono estándar de la ventana del Navegador no cambia inmediatamente, sino sólo después de reiniciar el Terminal. El menú Actualizar en el mismo lugar - no ayuda

Se espera: inmediatamente

 
A100:
Error de compilación no corregido
template<typename T>
class A
  {
public:
   void              f(int) {}        //(1)
  };

class B : public A<int>
  {
public:
   void              f(int, int) {}   //(2)
  };

void OnStart()
  {
   B b;
//--- да, жаль, что не работает именно так, как вы написали, но
//если очень надо чтобы заработало без предупреждений компилятора
//касательно вызова скрытого метода, то можно попробовать вот такой
//временный костыль, пока не исправят
   A<int>* a_1=dynamic_cast<A<int>*>(&b);
//--- или вот так
   A<int>*a_2=(A<int>*)&b;
   a_1.f(1);
   a_2.f(1);
  }


//--- либо совсем вот так
template<typename T>
class A
  {
public:
   void              f(int) {}        //(1)
  };
class B : public A<int>
  {
public:
   void              f(int, int) {}   //(2)
   void              f(int x) {A<int>::f(x);}
  };
void OnStart()
  {
   B b;
   b.f('х'/'з');
  }
Razón de la queja: