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

 
bivmail:

1) подумалось, здесь ошибка:

раздел: Передача параметров в конструктор

"Функция Init() отставлена в секции private для обеспечения возможности переинициализации класса."

возможно:

Функция Init() отставлена в секции public для обеспечения возможности переинициализации класса. 

 2) Приведите, пожалуйста, пример использования возможности "создать массив с экземплярами классов (объектами)", для раздела" Массив объектов". Сам, к сожалению, не могу сообразить "с чем это едят".

3) в разделе "Еще об инкапсуляции (private, protected, public)" вскользь обозначено базовый класс->класс потомок. Возможно, эту данность (class Class: public CBase) надо в начале раздела объяснить, т.к. позже сообразил.

4) не нашёл:Рис.6. Видимость "лишней" функции (красная стрелка) определяется типом указателя, с помощью которого загружен класс. Этот пример находится в приложении в файле OOP_sDefaultVirtual_1.mq5.

5) Не нашёл четкого указания, что такое библиотека. Видимо, способ хранения класса(классов) функций? т.е. аналогично включаемому файлу, только включаемый файл - хранится в виде исходника, а библиотека в виде скомпилированной dll?

Огромное Спасибо за статью! Особенно порадовало, последовательное изложение материала.

1. Да. 

2. Есть пример в разделе "Массив объектов", собственно весь раздел это пример с описанием.

3. Рассматривается в разделе "Использование ООП для изменения логики работы программы".

4. Слова "Этот пример находится в приложении в файле..."  означает, что в файле находится пример к разделу обозначенному загловком раздела. Это восе не означает, что в примерах продублировано все, про что написано в статье. Этих примеров вообще может не быть, все написано в статье. Но примеры есть, можете брать их за основу и экспериментировать. Первична статья, примеры вторичны.

5. Уже давно указано: http://ru.wikipedia.org/wiki/%C1%E8%E1%EB%E8%EE%F2%E5%EA%E0_(%EF%F0%EE%E3%F0%E0%EC%EC%E8%F0%EE%E2%E0%ED%E8%E5)

 

Очень интересная статья, написанная грамотным "доступным" языком.

Автору спасибо.

 
Очень хорошо распиана статья! наконец то я это понял автору спасибо
 
Дмитрий, спасибо! Главное - вы сумели внятно показать принцип, в деталях же разберёмся )))
 

Прочитал тут все статьи про ООП, но только после этой въехал как это делать для MQL5.

5+

 
извиняюсь за примитивность вопроса, НО ооч. интересно просто какой сокральный смысл в именовании полей с префиксом "m_"?
 
thejobber:
извиняюсь за примитивность вопроса, НО ооч. интересно просто какой сокральный смысл в именовании полей с префиксом "m_"?
Сакрального никакого. Префикс m_ облегчает разделение всех переменных на являющиеся членами класса и не являющиеся. m_ это сокращение member
 
спасибо
 
Спасибо за статью! Многое стало понятней.
 
Это самая лучшая статья, Автору спасибо !