Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Да... да... Статья эта просто ШЕДЕВР! Огромное спасибо автору. У меня было несколько попыток покорить классы и всё ни как. А после вашей статьи, я как будто прозрел. ;-)
И всё таки кое что в этой статье мне глаз режет. Может конечно я чего не до понял? Но прошу обратить внимание.
В разделе "Заключение" Абзац №7 "7. Виртуальные функции объявляются ключевым словом virtual. При наличии у класса-потомка одноименной функции выполняется она, в случае отсутствия - выполняется виртуальная функция базового класса."
И в разделе "Ещё немного о загрузке классов" есть такие строки: - "Если использовать автоматический указатель на базовый класс, будет использоваться базовый класс как есть. При вызове его виртуальных функций будет отрабатываться код, расположенный внутри этих функций. Виртуальные функции превращаются в обычные функции."
Так вот, я всё это указываю к тому, что в разделе "Заключение" в абзаце № 7 нужно указать, что слово virtual служит для передачи в наследство производным классам, когда объект объявлен типа базового класса через динамический указатель. А если объект объявлен типа класса потомка, через автоматический указатель, то наследование происходит всех не одноимённых функций (из public и protected ) базового класса, с функциями класса потомка. И в этом случае слово virtual не имеет ни какого значения.
Прикрепляю файлик "OOP_sDefaultVirtual_2.mq5" который наглядно показывает работу слова virtual. Запустите скрипт с этим словом и без него.
И попробуйте свой аналогичный скрипт "OOP_sDefaultVirtual_1.mq5" запустить со словом virtual и без него.
Ну а на MQL4, синтаксис и возможности сильно отличаются? Боюсь даже смотреть :))
-
Что означает "выравнивание"?
Следует иметь ввиду, что в MQL4 элементы структуры следуют непосредственно друг за другом без выравнивания