Получаем количество десятичных знаков после запятой любых чисел (не только котировок) в обход Digits() на MQL4 и MQL5 - страница 17

 
Dmitry Fedoseev:

Так написал же. 

Ответил, что не понял.

Dmitry Fedoseev:

Кто будет контролировать эту кратность? 

Тот, кто хочет написать универсальную конвертацию.

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

 
Dmitry Fedoseev:

Кто будет контролировать эту кратность? 

Думаю что после определения с деталями реализации будет доведение до ума где автор продумает все детали и нюансы... А сейчас мы просто тестили разные варианты. Точнее одинаковый вариант, поскольку особых развилок тут вроде нет

 
Ilya Malev:

Вот ещё интересная задача: сделать функцию сортировки массива более быструю, чем встроенный ArraySort. 

П.С. По алгоритмам сортировки прошелся, ничего даже близкого по скорости к встроенному ArraySort не нашел. Такие дела ))) Ближе всего было бинарное дерево...

 
fxsaber:

Ответил, что не понял.

...

Вот: шаблон объединения, в которое входит некая структура и массив.

template <typename S>
union UX{
   S s;
   char a[sizeof(S)];
};

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

Обратная конвертация - ArrayCopy(). Скопировать какой-то массив в массив входящий в объединение и структура готова, можно прям так ее использовать из объединения, можно перекинут в другую структуры, просто знаком = 

 
fxsaber:
dll можно?
 
Dmitry Fedoseev:

Вот: шаблон объединения, в которое входит некая структура и массив.

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

Обратная конвертация - ArrayCopy(). Скопировать какой-то массив в массив входящий в объединение и структура готова, можно прям так ее использовать из объединения, можно перекинут в другую структуры, просто знаком = 

Видимо, я тупой, но так и не понял. Если Вам не сложно, могли бы Вы оформить в коде Вашу мысль?

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

 
TheXpert:
dll можно?

С куском памяти, конечно, просто, но все должно работать внутри MT. Поэтому DLL нельзя.

 
fxsaber:

С куском памяти, конечно, просто, но все должно работать внутри MT.

так все и будет работать внутри МТ.

 
TheXpert:

так все и будет работать внутри МТ.

Без выхода за пределы MQL.

 
fxsaber:

Видимо, я тупой, но так и не понял. Если Вам не сложно, могли бы Вы оформить в коде Вашу мысль?

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

Видимо, но не отчаивайтесь, еще не все потеряно, я в вас верю.

Причина обращения: