Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1521
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Всем доброго дня и хорошего настроения!
Вопросы от начинающего в программировании:
Я не профессиональный программист, поэтому не судите строго и мой ответ может быть неточен.
Структура - это элемент ООП. В отличие от простой переменной она содержит несколько типов данных и позволяет описать некий объект.
Например, мы программируем компьютерную игру и нам нужно описать монстра, который имеет несколько нижних конечностей (int),
несколько верхних конечностей (int), некоторую силу (float, double), время рождения (datetime), координаты в пространстве и др. характеристики.
Можно создать массив структур, элементом структуры может также быть массив или структура. В некоторых случаях без структур
практически не обойтись.
Что касается скорости то думаю что различие с обычными переменными минимально. Можно протестировать - это не сложно.
Можно протестировать - это не сложно.
Спасибо. Просто задумался на такую тему - а зачем создавать структуру, если и без неё можно спокойно обойтись глобальными переменными. Ну, это на мой непрофессиональный взгляд.
С измерением скорости у меня полная проблема, т.к. никогда не занимался и даже понятия не имею, как это сделать. ))
С уважением, Владимир.
Спасибо. Просто задумался на такую тему - а зачем создавать структуру, если и без неё можно спокойно обойтись глобальными переменными. Ну, это на мой непрофессиональный взгляд.
С измерением скорости у меня полная проблема, т.к. никогда не занимался и даже понятия не имею, как это сделать. ))
С уважением, Владимир.
Не представляю себе как можно без структур / ООП реализовать появление нового объекта с несколькими разнотипными свойствами.
Исчезновение одного из старых объектов (например убили монстра).
Тем более если количество объектов динамически меняется и заранее неизвестно.
Насчет замеров скорости / сравнения исполнения различных участков кода тут масса примеров.
Тот же сабер каждый день по несколько выкладывает.
1. Создаешь таймер высокого разрешения
2. Принтом выводишь его значение до выполнения операции.
3. После выполнения операции.
Разность - есть время выполнения операции.
Проделываешь это для обычной переменной и для структуры и сравниваешь.
а зачем создавать структуру
например для этого, что-бы свести вместе,
/*struct PriceData { double open[]; double high[]; double low[]; double close[]; };*/
или создавать структуры монстров в игре
далее
пример из справки.. наименования поменялСтруктура - это элемент ООП.
Так вот откуда и пошли у меня сомнения. Пишу, как правило, на простом процедурном языке, а мне один очень хороший человек подсказал такую мысль, что лучше мне научиться применять пользовательскую структуру. Оказалось, что пользовательская структура работает и без всякого ООП. )) Вот сижу и думаю, а нужно ли вообще применять в процедурном коде пользовательскую структуру, когда спокойно ранее обходился глобальными переменными. ))
С уважением, Владимир.
Не представляю себе как можно без структур / ООП реализовать появление нового объекта с несколькими разнотипными свойствами.
Исчезновение одного из старых объектов (например убили монстра).
Тем более если количество объектов динамически меняется и заранее неизвестно.
Насчет замеров скорости / сравнения исполнения различных участков кода тут масса примеров.
Тот же сабер каждый день по несколько выкладывает.
1. Создаешь таймер высокого разрешения
2. Принтом выводишь его значение до выполнения операции.
3. После выполнения операции.
Разность - есть время выполнения операции.
Проделываешь это для обычной переменной и для структуры и сравниваешь.
О, как! Об этом даже и не задумывался. Это про "Не представляю себе как можно без структур / ООП реализовать появление нового объекта с несколькими разнотипными свойствами".
За то, что подробно рассказали, как сделать замеры скорости, огромное спасибо!!!
С уважением, Владимир.
например для этого, что-бы свести вместе,
или создавать структуры монстров в игре
далее
пример из справки.. наименования поменялСпасибо за подсказку. Теперь начинаю осознавать ценность в использовании пользовательской структуры.
С уважением, Владимир.
Вам обязательно нужно по хэндлу? А то есть функция, которая удаляет с указанного окна графика индикатор с указанным именем.
IndicatorDelete(int,const string) - Ценовые графики - Стандартная библиотека - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
С уважением, Владимир.
Вам обязательно нужно по хэндлу? А то есть функция, которая удаляет с указанного окна графика индикатор с указанным именем.
IndicatorDelete(int,const string) - Ценовые графики - Стандартная библиотека - Справочник MQL5 - Справочник по языку алгоритмического/автоматического трейдинга для MetaTrader 5
С уважением, Владимир.
Проще взять функцию чем СБ…