Собственно
string A;
int N;
SymbolInfoDouble(A, N);
- почему такая конструкция не компилируется из-за того что второй аргумент переменная ?
Там ошибка в хелпе.
Описание такое:
double SymbolInfoDouble
(
string name, // символ
int prop_id // идентификатор свойства
);
А должно быть такое:
double SymbolInfoDouble
(
string name, // символ
ENUM_SYMBOL_INFO_DOUBLE prop_id// идентификатор свойства
);
Собственно, в хелпе уже есть признаки ошибки, в свойство вроде как типа int предлагается передавать значения перечисления ENUM_SYMBOL_INFO_DOUBLE.
- www.mql5.com
Предлагаю поправить функцию, а не справку. Какие проблемы изменить на double SymbolInfoDouble(string, int) ?
Предлагаю поправить функцию, а не справку. Какие проблемы изменить на double SymbolInfoDouble(string, int) ?
Изначально так и было, но потом компилятор сделали более строгим - и это правильно.
Да что здесь криминального ? что может быть проще функции double F(string, int) ?
А в существующем виде эту функцию в цикле по переборе параметров ENUM_SYMBOL_INFO_DOUBLE вообще теперь вызвать невозможно.
Как мне вытащить ASK и BID. У меня такая конструкция
int X[2] = {SYMBOL_ASK, SYMBOL_BID};
for(int i =0 ; i < 2 ; i++) double y = SymbolInfoDouble(Symbol(), X[i]);
Изначально так и было, но потом компилятор сделали более строгим - и это правильно.
Risk:
Как мне вытащить ASK и BID. У меня такая конструкцияОчень специфичное у вас представление о строгости.
нет ничего невозможного. и эта конструкция вполне нормально работает.
пойдите пообвиняйте майкрософт. у них еще строже.
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Вы принимаете политику сайта и условия использования
Собственно
string A;
int N;
SymbolInfoDouble(A, N);
- почему такая конструкция не компилируется из-за того что второй аргумент переменная ?