Обсуждение статьи "Основы объектно-ориентированного программирования" - страница 4

 

Да... да... Статья эта просто ШЕДЕВР! Огромное спасибо автору. У меня было несколько попыток покорить классы и всё ни как. А после вашей статьи, я как будто прозрел. ;-) 

И всё таки  кое что в этой статье мне глаз режет. Может конечно я чего не до понял? Но прошу обратить внимание.

В разделе "Заключение" Абзац №7 "7. Виртуальные функции объявляются ключевым словом virtual. При наличии у класса-потомка одноименной функции выполняется она, в случае отсутствия - выполняется виртуальная функция базового класса."

И в разделе "Ещё немного о загрузке классов" есть такие строки: - "Если использовать автоматический указатель на базовый класс, будет использоваться базовый класс как есть. При вызове его виртуальных функций будет отрабатываться код, расположенный внутри этих функций. Виртуальные функции превращаются в обычные функции."

Так вот, я всё это указываю к тому, что в разделе "Заключение" в абзаце № 7 нужно указать, что слово virtual служит для передачи в наследство производным классам, когда объект объявлен типа базового класса через динамический указатель. А если объект объявлен типа класса потомка, через автоматический указатель, то наследование происходит всех не одноимённых функций (из public и protected ) базового класса, с функциями класса потомка. И в этом случае слово virtual не имеет ни какого значения.

Прикрепляю файлик "OOP_sDefaultVirtual_2.mq5" который наглядно показывает работу слова virtual. Запустите скрипт с этим словом и без него.

И попробуйте свой аналогичный скрипт "OOP_sDefaultVirtual_1.mq5" запустить со словом virtual и без него.

Файлы:
 

Ну а на MQL4, синтаксис и возможности сильно отличаются? Боюсь даже смотреть :))

-

Что означает "выравнивание"?

Следует иметь ввиду, что в MQL4 элементы структуры следуют непосредственно друг за другом без выравнивания

 
Спасибо за статью!!! А то, много кто тут на форуме хвастает знанием ООП, обсуждают, а толку от этого начинающим никакого. Мне 50, изучал Фортран и Бейсик 30 лет назад в универе, и вот решил освоить MQL4 и 5 чисто для себя. Если можно, продолжите цикл статей, у вас очень хорошо получается просто и доступно объяснять. И побольше примеров с комментариями!!! Еще раз Большое Спасибо!!!
 
Отлично написано, спасибо!
 
Спасибо, хорошая статья. Нужно было только начать со структур. Они проще, а принцип уже отражают
Причина обращения: