tag:blogger.com,1999:blog-3704723600302758629.post7405141911960540325..comments2022-03-24T21:46:21.583+02:00Comments on Блог Сергея Бородавкина: C++: const-методы класса. Как не дублировать кодSergey Borodavkinhttp://www.blogger.com/profile/06154243184694262346noreply@blogger.comBlogger5125tag:blogger.com,1999:blog-3704723600302758629.post-48717063290789973392011-02-13T11:04:41.189+02:002011-02-13T11:04:41.189+02:00void findHadler (KeyType key, KeyType & resKey...void find<b>Hadler</b> (KeyType key, KeyType & resKey) const<br /><br />Наверное имелось в виду Handler. <br />А в остальном очень полезно, спасибо!Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-3704723600302758629.post-47057466492513014632009-07-21T09:14:30.112+03:002009-07-21T09:14:30.112+03:00Грабель, говорите? Работа в аутсорсинговой компани...Грабель, говорите? Работа в аутсорсинговой компании накладывает ограничения на полет творчества. Короче - const там уже стоял, и я его там не придумал))<br />Хотя смысл двух (const и не-const) методов, я думаю, ясен: искать нужно уметь как в неконстантном, так и в константном Hash-е.Sergey Borodavkinhttps://www.blogger.com/profile/06154243184694262346noreply@blogger.comtag:blogger.com,1999:blog-3704723600302758629.post-59700975388367240842009-07-20T19:26:10.003+03:002009-07-20T19:26:10.003+03:00а вы прикольный!
const это слишком сильное утвержд...а вы прикольный!<br />const это слишком сильное утверждение для вашего примера функции.<br />то есть вы говорите следующее. а дай-ка я сделаю сильное утверждение для функции, и попытаюсь ее реализовать функциями или методами со слабыми утверждениями! Эко я на грабель налечу!<br />ну налетели вы на грабель, как тому положено. и сделали выводов об этом полезном инструменте...Anonymousnoreply@blogger.comtag:blogger.com,1999:blog-3704723600302758629.post-619060901168505682009-06-18T10:14:02.243+03:002009-06-18T10:14:02.243+03:00Главная проблема с mutable, как я ее вижу, состоит...Главная проблема с mutable, как я ее вижу, состоит в следующем. Когда мы объявляем метод константным, мы декларируем, что внутри этого метода мы не собираемся изменять состояние объекта. Mutable - довольно грязный способ не оправдать ожидания и все-таки изменить объект. Нарушается т.н. принцип "наименьшего удивления" (<a href="http://benpryor.com/blog/2006/06/29/api-design-the-principle-of-least-surprise/" rel="nofollow">http://benpryor.com/blog/2006/06/29/api-design-the-principle-of-least-surprise/</a>): ожидали, что объект не изменится, а он изменился..<br /><br />Подробнее про mutable имхо хорошо написано здесь: <a href="http://www.highprogrammer.com/alan/rants/mutable.html" rel="nofollow">http://www.highprogrammer.com/alan/rants/mutable.html</a>Sergey Borodavkinhttps://www.blogger.com/profile/06154243184694262346noreply@blogger.comtag:blogger.com,1999:blog-3704723600302758629.post-82504354449514953562009-06-17T15:50:56.783+03:002009-06-17T15:50:56.783+03:00Чел, mutable - это не грязный хак, а возможность р...Чел, mutable - это не грязный хак, а возможность разделить ценные данные класса и служебную информацию.Anonymousnoreply@blogger.com