Вопросы от начинающих MQL5 MT5 MetaTrader 5 - страница 1183
Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Привет знатокам!
Есть вот такой код :
struct STRUCT_POSITION { \...\}
STRUCT_POSITION SPosition[];
Вопрос:
Что такое STRUCT_POSITION SPosition[]; ?? Если это создание экземпляра структуры, то почему динамический массив? Разве так можно? Зачем?
Буду очень благодарен за ответ.
Привет знатокам!
Есть вот такой код :
struct STRUCT_POSITION { \...\}
STRUCT_POSITION SPosition[];
Вопрос:
Что такое STRUCT_POSITION SPosition[]; ?? Если это создание экземпляра структуры, то почему динамический массив? Разве так можно? Зачем?
Буду очень благодарен за ответ.
Строка
объявляет массив (имя массива 'SPosition') структуры STRUCT_POSITION. И этот массив динамический, так как никто не знает сколько будет позиций записано в массив.
Строка
объявляет массив (имя массива 'SPosition') структуры STRUCT_POSITION. И этот массив динамический, так как никто не знает сколько будет позиций записано в массив.
Да, но в обьявлении структуры нет массива. Та только переменнные разных типов.
Я, наверное что-то не допонимаю.
Я Вам очень благодарен за ответы, не могли бы это обьяснить? Я не понимаю, как можно обьявить массив структуры, если в описании структуры не было массива? (Я этого не написал сразу, моя ошибка) (Кстати, это не Ваш ли советник? Я его изучаю как образец https://www.mql5.com/ru/code/27559 )
Да, но в обьявлении структуры нет массива. Та только переменнные разных типов.
Я, наверное что-то не допонимаю.
Я Вам очень благодарен за ответы, не могли бы это обьяснить? Я не понимаю, как можно обьявить массив структуры, если в описании структуры не было массива? (Я этого не написал сразу, моя ошибка) (Кстати, это не Ваш ли советник? Я его изучаю как образец https://www.mql5.com/ru/code/27559 )
Если вопрос по коду - спрашивайте в обсуждении кода.
Привет знатокам!
Есть вот такой код :
struct STRUCT_POSITION { \...\}
STRUCT_POSITION SPosition[];
Вопрос:
Что такое STRUCT_POSITION SPosition[]; ?? Если это создание экземпляра структуры, то почему динамический массив? Разве так можно? Зачем?
Буду очень благодарен за ответ.
Объявление структуры struct STRUCT_POSITION { \...\}, это создание пользовательского типа данных. А STRUCT_POSITION SPosition[]; объявление переменной пользовательского типа. На то, что переменная является массивом указывают квадратные скобки [] Можно объявить несколько переменных пользовательского типа как и любого другого типа.
В этой записи тип, переменная, массивСуществует ли какая-то утилита (вроде WatchDog) для перезапуска МТ5.
Допустим МТ5 из за какой-то ошибки закрылся. Как можно удаленно это сразу отследить и запустить МТ5.
Для МТ4 я использую MT4bar. Нужно что-то похожее под МТ5.
Добрый день.
Пытаюсь сделать универсальный базовый класс, чтобы всегда определять и вызывать объект одного класса.
А делаю я два решения для тестирования новостей. Есть базовый класс CNewsFilter и два наследуемых CNewsFilterLive и CNewsFilterTester. Я хочу определять в своем коде CNewsFilter объект. А он уже автоматически выбирает класс в зависимости от того, какой режим запущен. Но что-то не получается. Вот базовый класс, я оставил лишь метод Init() для примера.
Наследуемый класс:
А потом вызываю в коде своего советника:
При отладке никогда не попадают в наследуемый класс СNewsFilterTester, в который должен попадать согласно директиве базового класса, которую я добавил в конец кода базового класса. __MQL5__ здесь лишь для примера. Как это сделать с тестером - это другой вопрос. Пока не работает сама идея - не вызываются методы наследуемого класса. При вызове Init() не идет в Init() наследуемого класса - в данном примере СNewsFilterTester. Помогите, пожалуйста.
Добрый день.
Пытаюсь сделать универсальный базовый класс, чтобы всегда определять и вызывать объект одного класса.
А делаю я два решения для тестирования новостей. Есть базовый класс CNewsFilter и два наследуемых CNewsFilterLive и CNewsFilterTester. Я хочу определять в своем коде CNewsFilter объект. А он уже автоматически выбирает класс в зависимости от того, какой режим запущен. Но что-то не получается. Вот базовый класс, я оставил лишь метод Init() для примера.
Наследуемый класс:
А потом вызываю в коде своего советника:
При отладке никогда не попадают в наследуемый класс СNewsFilterTester, в который должен попадать согласно директиве базового класса, которую я добавил в конец кода базового класса. __MQL5__ здесь лишь для примера. Как это сделать с тестером - это другой вопрос. Пока не работает сама идея - не вызываются методы наследуемого класса. При вызове Init() не идет в Init() наследуемого класса - в данном примере СNewsFilterTester. Помогите, пожалуйста.
Здесь
вы создаёте объект базового класса. Соответственно - базовый класс у вас везде.
Как правильно писать условие :
так
или так:
??