Вы упускаете торговые возможности:
- Бесплатные приложения для трейдинга
- 8 000+ сигналов для копирования
- Экономические новости для анализа финансовых рынков
Регистрация
Вход
Вы принимаете политику сайта и условия использования
Если у вас нет учетной записи, зарегистрируйтесь
Константный метод - очередной пример пословицы "хотели как лучше, получилось как всегда". Думаю для С++ это вообще девиз. Практической пользы нет никакой, зато существенно затрудняет проектирование ООП-программ, т.к. постоянно требуется контролировать тип модифицируемого объекта (должен быть также константным).
Можно пример того, о чем Вы написали?
Константный метод - очередной пример пословицы "хотели как лучше, получилось как всегда". Думаю для С++ это вообще девиз. Практической пользы нет никакой, зато существенно затрудняет проектирование ООП-программ, т.к. постоянно требуется контролировать тип модифицируемого объекта (должен быть также константным).
))) У меня лежит старая книга Страуструпа, если в дом ворвутся грабители, я ей легко отобьюсь, она как кирпич весит )) Старик таких сложностей навставлял в язык..
Помню, меня давно гоняли на собеседовании по плюсам, задали вопрос и я на него не смог точно ответить. Принесли подобный талмуд, почитал, спрашиваю,- а вы сами это применяете?
Ребята такие смеются, все ок, на этот вопрос еще никто правильно не ответил, так как никто не использует.
Кстати, где-то лежит книга по плюсам начала 90-х, еще до принятия первого стандарта. Нормальная удобоваримая книжечка в бумажной обложке. А потом Остапа понесло ))
Можно пример того, о чем Вы написали?
Пример Алексей написал. Константный метод не может менять члены своего класса. Казалось бы в чем проблема? Просто не используй модификатор const. Но тогда возникают трудности в наследовании (особенно от стандартной библиотеки): проектировщик определил виртуальный метод const, а в производном классе, методу требуется кое-что поменять в своих данных - и тут затычка из-за const. Без него переопределения метода не произойдет, а с ним производный метод не сможет менять данные своего же класса.
В чем главная ошибка введения такого модификатора для методов класса? В том что нарушается главный принцип наследования: специализации и уточнения. Базовый класс запрещает работать методу производного класса с его внутренними данными. А такого быть не должно.
Шарпом за версту несет ))
Ничего const не затрудняет, не надо ля-ля
Шарпом за версту несет ))
Я и не отрицаю. Шарп действительно совершенный, великий и прекрасный язык.
Ничего const не затрудняет, не надо ля-ля
Хорошо, допустим с const всегда можно вывернутся. Но лучше кратко объясни на примере, что дает const? В чем его реальная польза? На примере, и желательно не из пальца высосанном.
...
В чем главная ошибка введения такого модификатора для методов класса? В том что нарушается главный принцип наследования: специализации и уточнения. Базовый класс запрещает работать методу производного класса с его внутренними данными. А такого быть не должно.
Может это какая-то часть, которая дается от создателей к простым юзерам. Как функция start в советнике и переменные Bid, Ask.
Когда все полностью сам делаешь, то нет смысла заморочиваться всякими const.
Я и не отрицаю. Шарп действительно совершенный, великий и прекрасный язык.
...
Великий. Но до совершенства ему очень далеко.