Календарь возвращает несортированные по времени события.
voidOnStart()
{
MqlCalendarValue Values[];
if (::CalendarValueHistory(Values, 0)) // Взяли весь календарьfor (int i = ArraySize(Values) - 1; i > 0; i--)
if (Values[i].time < Values[i - 1].time) // Если время предыдущего события опережает следующее
{
Print("Values[i].time < Values[i - 1].time"); // Сообщаем.break;
}
}
В этом смысле согласен - как есть оставлять нельзя:
Либо все разрешить (в ущерб другим операциям) - либо все запретить
Принтует. Причина в AllDay-событиях.
Строка для поиска: Oshibka 051.
Просьба подумать о возможности добавления штатной сортировки структур по числовым полям, подобно этому.
Только при этом игнорировать возможные операторы присваивания. Т.е. делать сортировку на уровне памяти, как это сделано с ArraySwap для массивов.
Строка для поиска: Uluchshenie 050.Просьба подумать о добавлении возможности обмена переменных (включая структуры), игнорируя операторы присваивания. Т.е. на уровне памяти.
Пример, демонстрирующий проблему обмена, который работает в некоторых случаях.
Строка для поиска: Uluchshenie 051.Просьба подумать о добавлении возможности штатной распечатки структуры.
Пример, когда свой вариант не всегда работает.
Результат.
Свой подобный подход мог бы работать, если бы была реализована универсальная возможность обмена переменными.
Строка для поиска: Uluchshenie 052.Просьба подумать о возможности добавления штатной сортировки структур по числовым полям, подобно этому.
Только при этом игнорировать возможные операторы присваивания. Т.е. делать сортировку на уровне памяти, как это сделано с ArraySwap для массивов.
Строка для поиска: Uluchshenie 050.Так нельзя, массив структур это не массив указателей на области памяти с данными. Так можно с классами...
Написал же, что на уровне памяти.
Написал же, что на уровне памяти.
А я все о своих "баранах". Хочется еще раз попросить разработчиков увеличить количество градаций масштаба.
Спасибо.
Это как?
Обмен кусками памяти.