![MQL5 - Язык торговых стратегий для клиентского терминала MetaTrader 5](https://c.mql5.com/i/registerlandings/logo-2.png)
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
по моему скромному мнению, тот самый случай когда правильнее всё это сделать в DLL.
Аналогично, с любым стандартным типом или простой структурой.
Спасибо!
Но, честно говоря, я люблю прямые решения, без использования лишних зависимостей, типа включаемых файлов, поэтому для своей задачи я пошел коротким путем, взяв основной принцип (кастинг через структуры), как мне и посоветовали (в том числе и по вашей библиотеке):
Да, глобально. Но раз писать в бинар, может сразу так и делать? Винда же все равно все кешит.
Винда же все равно все кешит.
Кстати, а вот и нет :)
Чтобы записываемые данные функцией FileWriteFloat (да и любой другой) затем были доступны для чтения функцией FileReadFloat, к сожалению, необходима ф-я FileFlush, чтобы сбросить на диск всех данных, оставшихся в файловом буфере ввода-вывода. Похоже, что запись и чтение происходит из отдельных буфферов, которые нужно синхронизировать вручную через запись и чтение на жесткий диск. Если подумать, то это вполне разумно, я так думаю.
Есть еще вариант, которым я пользуюсь, но это, все таки, не рентабельно.
Суть заключается в том, что нужно сначала число записать в бинарный файл, а потом прочитать 4 байта. Но это сойдет лишь для экспериментов и как очень временное решение :)
https://www.mql5.com/ru/code/845
Ого, вот это круто! И почему я сразу не нашел ваш класс? Видимо, плохо искал :(
Кстати, я и сам подобный класс написал, только оставалось сделать последний штрих (float и double), собственно, из-за которого я и под застрял.