![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
действительно, хорошо бы иметь шаблон предиката для стл, алгоритмов, разгружающий бинд..
только он должен быть простым предикатом, а не and_pred.. a боост::лямбду тоже запретили ? |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
в этой теме, мне действительно интересно реализация этого без лямбды. Добавлено через 1 минуту и 26 секунд что именно в "and_pred" не нравится? |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
префикс "and" который заставляет изготавливать несколько однообразных предикатов.. сейчас попробую наваять как я себе представляю.. |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
ааа.. так он появился из-за моей задачи а в идеале, да, должен еще и логический предикат указываться. хотя..группа предикатов and_*, or_* тоже бы облегчила понимание. |
|||
|
||||
| mes |
|
|||
|
любитель ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 7954 Регистрация: 14.1.2006 Репутация: 144 Всего: 250 |
вот грубый набросок: http://liveworkspace.org/code/d649be290aaa...b02824b4353dffa
чтоб выглядило прилично, нужно поднапрячься.. но неохота.. главное смысл понятен, как получать композиционный отложенный предикат.. |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
Почему сразу личное? Это я про программирование вообще. Не только бустом можно код зашифровать. И я вовсе не против алгоритмов и предикатов. Если код с алгоритмом-предикатом-байндом выглядит ясно, то здорово. Просто не надо это самоцелью делать. -------------------- ... |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
так нет же. цель - улучшить стиль. подглядывание стиля из буста, очень помогает. |
|||
|
||||
| Earnest |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 5962 Регистрация: 17.6.2005 Где: Рязань Репутация: 53 Всего: 183 |
А навеяно вот чем:
слишком много усилий тратится на то, чтобы придумать супер-шаблон, в который можно запихать 2 или больше предиката, да чтобы все это еще хорошо выглядело... Как академическая, задачка интересная, да. Но на практике... какой алгоритм (я имею в виду обработку каких-нибудь данных, практичную) за это время можно было бы написать... Короче, время на заточку лопаты нужно разумно регулировать. Туда ведь не только время, но и мозговая энергия уходит... Работодатель тебе за что платит-то? Ведь не за байндеры хитрые? -------------------- ... |
|||
|
||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
шаблон пишется один раз. вставляется в какой-нибудь utils.hpp, и используется во всем проекте. нет, конечно, если в задаче использование этого шаблона происходит все раз - то разрабатывать его нет смысла. но после того, как он уже разработан, скопипастить его много времени не занимает. Это сообщение отредактировал(а) boostcoder - 21.12.2010, 11:21 |
|||
|
||||
| null56 |
|
||||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 721 Регистрация: 19.3.2008 Репутация: 2 Всего: 12 |
немного с опозданием, но пускай останется для истории
бустовский bind поддерживает логические операции, что позволяет избавиться от одного уровня с logical_and
вместо
можно короче
Это сообщение отредактировал(а) null56 - 10.1.2011, 01:38 |
||||||
|
|||||||
| boostcoder |
|
|||
![]() pattern`щик ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 5458 Регистрация: 1.4.2010 Репутация: 49 Всего: 110 |
это я знал, т.к. регулярно использую operator!() с баиндами. но мне и в голову не пришло что можно таким образом комбинировать функциональные объекты... |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |