Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности

Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
|
23.09.2013, 18:02
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Приветствую! Можно ли изнутри лямбды достучаться до итератора? Типа Код: plaintext 1. Разумеется, можно сделать без лямбд, но подсел на компактность ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 18:08
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Только грязным хаком: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 18:49
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Жалко. Впрочем, вроде вариант более менее рабочий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:07
|
|||
|---|---|---|---|
Достать итератор изнутри лямбды |
|||
|
#18+
tolyanchikРазумеется, можно сделать без лямбд, но подсел на компактность В настоящей погоне за компактностью люди наворотили 5К Chess умело используя #defines. А некоторые перцы пилят ультра-компактные эзотерические ЯП (кстати в смежных форумах ). Но я-бы выбирал между идеологией и С++. Если вы твёрдо решили идти в лямбды то может быть стоит менять парадигму а не курочить бедные несчастные плюсы. Их семантика и так пострадала да лет 10-20 навязывания чужеродных стилей кодинга. Старик Бьярне хватается за сердце и пьёт капли. Да и тимлид вас проклянёт проклятием Вуду после первого кодеревью ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:19
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Да ну:) Сам Бьярн очень доволен новым С++, мол это как новый язык. Компактность не самоцель, просто если нет разницы, зачем писать больше? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:34
|
|||
|---|---|---|---|
Достать итератор изнутри лямбды |
|||
|
#18+
tolyanchikДа ну:) Сам Бьярн очень доволен новым С++, мол это как новый язык. Компактность не самоцель, просто если нет разницы, зачем писать больше?А как насчет "читать"? Речь то не о том что ты такой молодец запихнул в минимум букв, максимум команд. А о том, что кто-то это потом поддерживать будет и искать в этом баги. И твой напарник привыкший к С++ проклянет тебя, выкинет твой код нафиг и перепишет его в традиционном стиле. А если так хочется писать функционально - ну возьми Хаскел и пиши на нем. Связь с С++ там очень легко делается и всем будет сразу понятно что этот код написан в лямбда-стиле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:38
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
А чем не нравиться по людски? Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:39
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Читаемость не страдает, думаю, это дело привычки. В основном лямбды будут работать внутри стандартных алгоритмов. А что взамен? Функторы? Или велосипедный самопал вместо алгоритмов СТЛ ( зато понятно )? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:41
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Только грязным хаком Можно, конечно. Но хотелось однострочник:) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:45
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Только грязным хаком:А чем не нравиться по людски? Код: plaintext 1. 2. А для любых контейнеров гарантируется корректность вычитания из end() ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:45
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Только грязным хаком Плюс это не для всех типов итераторов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:47
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
tolyanchik Только грязным хаком Можно, конечно. Но хотелось однострочник:)Легко! Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 19:58
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
tolyanchik, Напишите свой generate с двумя генераторами и используйте в своих однострочниках. Типа такого: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 20:03
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Anatoly Moskovsk Спасиб, интересно! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
23.09.2013, 21:00
|
|||
|---|---|---|---|
|
|||
Достать итератор изнутри лямбды |
|||
|
#18+
Anatoly MoskovskyТолько грязным хаком:А чем не нравиться по людски? Код: plaintext 1. 2. А для любых контейнеров гарантируется корректность вычитания из end() ? Только: vector, array и deque. В list, map и set только такого вида вариант прокатывает: Код: plaintext 1. В unordered_set, unordered_map и forward_list нету функции .rbegin(). И к слову, в queue и stack вообще нету being() и end() :) http://ideone.com/j1wMQo ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|
24.09.2013, 11:41
|
|||
|---|---|---|---|
Достать итератор изнутри лямбды |
|||
|
#18+
[quot mayton]tolyanchikНо я-бы выбирал между идеологией и С++. Если вы твёрдо решили идти в лямбды то может быть стоит менять парадигму а не курочить бедные несчастные плюсы. Их семантика и так пострадала да лет 10-20 навязывания чужеродных стилей кодинга. Старик Бьярне хватается за сердце и пьёт капли. Ну, тут ты глубоко неправ. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
|
|
|

start [/forum/topic.php?fid=57&tablet=1&tid=2019960]: |
0ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
73ms |
get topic data: |
12ms |
get forum data: |
2ms |
get page messages: |
47ms |
get tp. blocked users: |
1ms |
| others: | 285ms |
| total: | 449ms |

| 0 / 0 |
