Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
наверное потому, что я почти не понимаю этот код :)
сорри, программист-любитель.. с ООП на базовом уровне только знаком
Дык, не Вы один не понимаете, не Вы один... Такой стиль - впихнуть невпихуемое в Макрос - имеет свои преимущества и недостатки. Насколько заметил, коллега fxsaber демонстрирует только преимущества (гибкость, кроссплатформенность и т.п.). А то что в Отладчике такой код не проверить, это как? Ну и читаемость такого стиля весьма сомнительна. Но, как говорится, хозяин - барин...
в С++ класс и структура одно и то же, просто некоторые умолчания разные.
угу, как взять указатель на структуру?
Так учиться надо на правильных примерах. А в СБ их нет. Взять тот же CObject - контроль типов он не обеспечивает, работу на уровне интерфейсов с объектами он не предоставляет, зато содержит бессмысленные методы вроде Save() и Load(), которые никогда и не переопределяются на практике. Указатели m_prev и m_next используются в одном единственном классе CList, зато присутствют как балласт для всех классов потомков. Самым полезным является метод Comparer(). Действительно он переопределяется чаще всего. Но по-хорошему Comparer() - это интерфейс, его правильней было бы определить не в CObject, а в виде отдельного класса.
Про контроль поясни плз, не понял. С какими объектами? Это вообще должен быть класс пустышка, без полей и методов. Его единственная цель - обеспечить общего предка для других классов. То, что разрабы навставляли туда мусора, это большая ошибка.
И никаких Compare там быть не должно. Это должен быть класс-пустышка.
Про контроль поясни плз, не понял. С какими объектами? Это вообще должен быть класс пустышка, без полей и методов. Его единственная цель - обеспечить общего предка для других классов. То, что разрабы навставляли туда мусора, это большая ошибка.
И никаких Compare там быть не должно. Это должен быть класс-пустышка.
Это-ж не SmallTalk, вся практика (да и теория тож) показали что выводить древо объектов от Адама - злющее зло. Причём ST это позволительно, он в собственном соку (своей вирт.машине) варится.
судя поподогреву, к 8-му марта ожидаем try-catch-throw ?? :-) Праздник конечно будет женский, но грех будет не выпить
Это-ж не SmallTalk, вся практика (да и теория тож) показали что выводить древо объектов от Адама - злющее зло. Причём ST это позволительно, он в собственном соку (своей вирт.машине) варится.
судя поподогреву, к 8-му марта ожидаем try-catch-throw ?? :-) Праздник конечно будет женский, но грех будет не выпить
Не, праздника не будет, Ренат сказал - никаких исключений. См. ветку https://www.mql5.com/ru/forum/168361 , тут кто-то ее наверх поднял. Мне самому было интересно, планируются эксепшены или как? Ответ был увы отрицательный.
Зато мля в компиляторе появилась важная галка - проверять делители ))))) пипец. Ждем к 8 марта галку "проверять выход за границы массива..." И потом еще 25 страниц с подобными галками. Ведь эксепшены-то готовить не умеем.
ЗЫ: Посмотрел базовый класс Object в C#, тоже минимум. Картинка из msdn
Дык, не Вы один не понимаете, не Вы один... Такой стиль - впихнуть невпихуемое в Макрос - имеет свои преимущества и недостатки. Насколько заметил, коллега fxsaber демонстрирует только преимущества (гибкость, кроссплатформенность и т.п.). А то что в Отладчике такой код не проверить, это как? Ну и читаемость такого стиля весьма сомнительна. Но, как говорится, хозяин - барин...
Зачем приписывать конкретному примеру то, чего в нем нет?
по каким лекалам можно научиться точно так же программировать? :) очень уж симпатично вглядит
Самоучка, поэтому нигде не подсмотрено. У меня Туполевский подход: "Хорошо летают только красивые самолеты!"
Это-ж не SmallTalk, вся практика (да и теория тож) показали что выводить древо объектов от Адама - злющее зло. Причём ST это позволительно, он в собственном соку (своей вирт.машине) варится.
судя поподогреву, к 8-му марта ожидаем try-catch-throw ?? :-) Праздник конечно будет женский, но грех будет не выпить
Смысл пустого базового класса в том, чтобы мы могли написать такое. Сразу говорю, пример не несет полезной нагрузки, на ходу придумал. Смысл в том, что любой производный класс мы можем привести к CObject*
*
угу, как взять указатель на структуру?
честно говоря не понял вопроса, но в любом случае так же как для класса
Сильно извиняюсь, Вы в контексте какого языка делаете такой вывод? :-)
честно говоря не понял вопроса, но в любом случае так же как для класса