Новая версия платформы MetaTrader 5 build 3390: Float в OpenCL и математических функциях, методы активации и потерь для машинного обучения - страница 8

 
MetaQuotes #:

В нашем коде и библиотеках нет таких объявлений.

Проверьте внимательно свой код и покажите точные строки, на которые указывает компилятор.

Откуда ж оно могло взяться? )))

Файлы:
test.mq5  1 kb
 
Oleksii Chepurnyi #:

Откуда ж оно могло взяться? )))

"reserved for future use" , "and internal cases" :-) Или просто забыли

обилие ключевых слов в языке без их формальных определений в mql, к этому и приводит.

Этот камешек разработчикам - по логике вещей должен физически существовать mql5.mqh где есть определения всех встроенных констант, перечислений, типов и функций терминала.

 
MetaQuotes #:

В нашем коде и библиотеках нет таких объявлений.

Проверьте внимательно свой код и покажите точные строки, на которые указывает компилятор.

Я уверен, что в моем коде нет дублирующих объявлений. Простой проверочный код прилагаю (см. вложенный файл). Генерирует следующие ошибки:

identifier 'ENUM_SORT_MODE' already used    test_enum-sort.mq5    13    6
implicit conversion from 'enum ENUM_SORT_MODE' to 'enum ENUM_SORT_MODE'    test_enum-sort.mq5    22    18
   'ENUM_SORT_MODE::SORT_ASCENDING' will be used instead of 'ENUM_SORT_MODE::SORT_ASCEND'    test_enum-sort.mq5    22    18
implicit conversion from 'enum ENUM_SORT_MODE' to 'enum ENUM_SORT_MODE'    test_enum-sort.mq5    22    18
   'ENUM_SORT_MODE::SORT_ASCENDING' will be used instead of 'ENUM_SORT_MODE::SORT_ASCEND'    test_enum-sort.mq5    22    18
1 errors, 2 warnings        2    3

Полагаю, что в вашем коде все же есть такие объявления. Это не великая проблема - пару минут на переименовывание имени типа, но для грядущих поколений стоит разобраться и, как минимум, добавить в документацию.

Файлы:
 
Vladimir Belozercev #:

Я уверен, что в моем коде нет дублирующих объявлений. Простой проверочный код прилагаю (см. вложенный файл). Генерирует следующие ошибки:

identifier 'ENUM_SORT_MODE' already used    test_enum-sort.mq5    13    6
implicit conversion from 'enum ENUM_SORT_MODE' to 'enum ENUM_SORT_MODE'    test_enum-sort.mq5    22    18
   'ENUM_SORT_MODE::SORT_ASCENDING' will be used instead of 'ENUM_SORT_MODE::SORT_ASCEND'    test_enum-sort.mq5    22    18
implicit conversion from 'enum ENUM_SORT_MODE' to 'enum ENUM_SORT_MODE'    test_enum-sort.mq5    22    18
   'ENUM_SORT_MODE::SORT_ASCENDING' will be used instead of 'ENUM_SORT_MODE::SORT_ASCEND'    test_enum-sort.mq5    22    18
1 errors, 2 warnings        2    3

Полагаю, что в вашем коде все же есть такие объявления. Это не великая проблема - пару минут на переименовывание имени типа, но для грядущих поколений стоит разобраться и, как минимум, добавить в документацию.

Практически всегда, ошибка у программиста начинается с Я УВЕРЕН...

 
Vladimir Pastushak #:

Практически всегда, ошибка у программиста начинается с Я УВЕРЕН...

Тестовый скрипт же приложен. Достаточно открыть в редакторе и попытаться скомпилировать. Результат:


Перечисление ENUM_SORT_MODE действительно окрашено красным как стандартное. Но F1 по нему не ведёт в справку по этому перечислению, а ведёт сюда:


 

Дебагер не распознает переменную.

class A
{
public:
  static int i;
};

static int A::i = 0;

void OnStart()
{
  DebugBreak();
  
  A::i = 1;  
}

Строка для поискаOshibka 043.

 
Обычно каждый год к сентябрю возникает "гениальная идея", которую я проверяю. Сейчас тоже...

Но в этот раз часть моей библиотеки оказалась сломана из-за matrix:
bool addAll(CMatrixDouble &matrix) {...} // 'matrix' - comma expected

Даже в доках теперь ошибки: https://www.mql5.com/ru/docs/basis/types/dynamic_array
double matrix[][10][20]; // 3-мерный динамический массив
ArrayResize(matrix,5);   // задали размер первого измерения

Зачем vector<double> вместо double[] ?
И почему не tensor вместо vector+matrix+xD ? Кто-то матчасть не осилил?

Документация по MQL5: Основы языка / Типы данных / Объект динамического массива
Документация по MQL5: Основы языка / Типы данных / Объект динамического массива
  • www.mql5.com
Объект динамического массива - Типы данных - Основы языка - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
 
markdown добавьте уже для постов...
 
Множественное наследование классов до сих пор не добавили? Даже для интерфейсов, как в Java и C#?
В Питоне круто решили проблему перекрытия функций в наследнике: первая функция в порядке объявления родителей.

 
к чату форум сайта бы добавили