Ошибки, баги, вопросы - страница 1329

 

У меня при переключении с русского на английский, с перезапуском терминала, кнопка "отмена" так и осталась написана по русски. Win ХP SP3

 

 

Нельзя перегрузить

class A {};
void f( const A& ) { Print( 1 ); } //1:
void f(       A& ) { Print( 2 ); } //2:
void OnStart()
{
              A a1;
        const A a2;
        f( a1 ); // ошибка компиляции
        f( a2 ); // нормально, вызывается 1: f( const A& )
         
}

А что мешает там где ошибка вызывать 2: f( A& )  ? 

При этом указатели перегружаются нормально

void f( const A* ) { Print( 1 ); }
void f(       A* ) { Print( 2 ); }
void OnStart()
{
              A *a1;
        const A *a2;
        f( a1 ); //нормально
        f( a2 ); //нормально
}
 

Ошибка компиляции

void g( int&  array[] ) { Print( __FUNCTION__); }
void h( long& array[] ) { Print( __FUNCTION__); }
template<typename T>
void f( T& t[] )
{
        if (      typename( T ) == "int"  ) g( t ); //Ошибка: parameter conversion not allowed
        else if ( typename( T ) == "long" )  h( t ); //Ошибка: parameter conversion not allowed
}
void OnStart()
{
        int  i[ 1 ];
        long j[ 1 ];
        f( j );
        f( i );
}

а так

void g( int  array ) { Print( __FUNCTION__); }
void h( long array ) { Print( __FUNCTION__); }
template<typename T>
void f( T t )
{
        if (      typename( T ) == "int"  ) g( t );
        else if ( typename( T ) == "long" ) h( t );
}
void OnStart()
{
        int  i;
        long j;
        f( j );
        f( i );
}
нормально
 
Vladimir Zubov:

У меня при переключении с русского на английский, с перезапуском терминала, кнопка "отмена" так и осталась написана по русски. Win ХP SP3

 

Это потому что винда - русская. Системные кнопки система сама подписывает на своём языке
 
Vladimir Zubov:
Это получается если советник использует вызов стандартного индикатора, то тоже "привет" ?

Нет.

Тут чисто интерфейсный глюк.

 
A100:

Ошибка компиляции

а так

нормально
По сообщению 1769811: всё правильно, тут нужно использовать явную специализацию шаблонов функций. К сожалению, на данный момент не поддерживается компилятором, но реализация имеется в планах.
Явная специализация шаблонов функций
Явная специализация шаблонов функций
  • msdn.microsoft.com
Используя шаблон функции, можно указать особое поведение для определенного типа, предоставив явную специализацию (переопределение) шаблона функции для этого типа.
 

Добрый день! Сориентируйте нуба пожалуйста. Используется MT5 не для торговли, а как источник неких "случайных" данных (и не спрашивайте даже зачем - не моя прихоть). Возможно ли получить исторические данные измеряемые в тиках (нужны данные изменения bid и ask несколько раз в секунду). Куда копать ? Я знаю что при тестировании индикатора MT5 выкачивает данные - как это использовать ?

Стоит задача написать кастомный индикатор который текущие тики передает определенному сервису (это не проблема). Нигде не нашел как получить исторические данные в тиках а не в M1. 

 
iZer0:

Добрый день! Сориентируйте нуба пожалуйста. Используется MT5 не для торговли, а как источник неких "случайных" данных (и не спрашивайте даже зачем - не моя прихоть). Возможно ли получить исторические данные измеряемые в тиках (нужны данные изменения bid и ask несколько раз в секунду). Куда копать ? Я знаю что при тестировании индикатора MT5 выкачивает данные - как это использовать ?

Стоит задача написать кастомный индикатор который текущие тики передает определенному сервису (это не проблема). Нигде не нашел как получить исторические данные в тиках а не в M1. 

CopyTicks(_Symbol,tick_array,COPY_TICKS_ALL,0,ticks);
.
 
pako:
Спасибо за наводку. Но в описании сказано, что получатся тики за рабочую сессию терминала. Как получить реальные исторические данный (естественно при условии, что провайдер их предоставляет с нужной степенью детализации). Посвятите пожалуйста - выкачивает ли эти данные терминал сам ? (чтобы по сути у него их и забрать). Что определяет глубину исторических данных ?
 
iZer0:
Цены бид и аск (на данный момент) Вы получите только в том случае, если сами их соберете (запишите в файл). СopyTicks возвращает только 2000 тиков.
Причина обращения: