Вадим Румянцев @vadimr
Разработчик аппаратно-программных комплексов
Information
- Rating
- 995-th
- Location
- Санкт-Петербург, Санкт-Петербург и область, Россия
- Date of birth
- Registered
- Activity
Specialization
Specialist
Lead
Разработчик аппаратно-программных комплексов
Содержательно, функция – это имя, связанное с лямбда-выражением. Хотя с точки зрения описания синтаксиса C++ в стандарте, тело функции по историческим причинам не называют лямбда-выражением. Лямбда-функция – это менее удачный термин, который означает в точности то же самое, что лямбда-выражение.
Это называется “лексическая область видимости” (lexical scope).
Когда мы здесь говорили об итеративных вызовах, то имели в виду конкретный пример, приведённый коллегой. Если данный код будет скомпилирован на машине с использованием стека, то стековых фреймов при разных вызовах будет 10 (хотя фактически и в одном и том же месте стека). А вот состояние у лямбды здесь будет всего одно, так как её контекст фактически состоит из разделяемой локальной переменной и разделяемого же счётчика инструкций.
А про количество инстансов в итеративном алгоритме я вообще ничего не говорил. Тут дай бог с простыми случаями вроде рекурсии разобраться, а потом уж можно будет заходить в такие дебри семантики.
Поскольку в языке С++ область видимости имён всегда лексическая, а лексический контекст вызова лямбда-выражения может меняться в зависимости от точки вызова, то для реализации имеющих список захвата лямбда-выражений действительно используются лексические замыкания. Однако замыкание не является непременным атрибутом лямбда-выражения в C++ и не является содержательным отличием лямбда-выражения от функции.
Я зато, условно говоря, спец в лямбда-выражениях. Хотя и языку C++, в котором не считаю себя спецом, многих мог бы поучить.
Я человек педантичный и люблю правильное использование терминологии. С которым в программировании вообще беда, а в языке C++ в особенности (достаточно сказать, что в описаниях языка C++ используются два противоречащих друг другу определения термина “переменная”, и никого это особо не смущает). Тут без некоторого погружения в основы не обойтись.
Очень жаль, если обсуждение фундаментальных вопросов вы воспринимаете как сотрясения воздуха.
Ну вообще лямбда-выражения придуманы задолго до классов и даже до программирования, как такового.
Вас забанили в гугле?
А в вашей статье надо ещё на численность населения поделить.
А другие камеры разве делают “в громкую”?
Открыть защищённый чат.
США – лидирующая в мире страна по количеству камер слежения на душу населения. Канада, наверняка, не сильно отстаёт. А возбудил их почему-то именно вендинговый автомат.
Вы изобрели yast.
В третий раз напишу - всё зависит от ситуации.
Смотря в какой ситуации. Например, было дело, рядом со мной рекламный щит падал. Или отлетевшие детали других машин летели.
Это хорошо, если вы (1) законопослушный водитель и (2) всё время находитесь в одной скоростной зоне. И то опасно себя ограничивать, мало ли какая ситуация возникнет.
А у меня по пути из дома на работу, например, сменяются пять скоростных зон 60-110-90-110-60, даже если не обращать внимание на всякие временные знаки.
И можно туда подключать свои флешки?
Вы слишком глубоко копаете. Тут важен юридический прецедент.
Разумной альтернативой было бы напечатать в бумажном письме короткий url документа на сайте банка.
Ну это во многом особенности национального культурного кода. Японцы, например, не способны отклониться от технологии даже буквально ради спасения собственной жизни (помнится, на Фукусиме больше суток не могли подключить насосы для откачки радиоактивной воды из-за несовпадения разъёмов питания).
Я тоже не смотрю на аналоговый спидометр, только на цифровой. Хотя на предыдущих машинах были только аналоговые спидометры. Видеть сразу число для меня гораздо удобнее, чем думать об отклонении стрелки от делений. То же самое с часами.
Круиз контролем практически не пользуюсь, он малопригоден для российского движения, достаточно хаотичного.
Ну конечно, есть существенная разница, тем более что питон динамический язык. Но есть и много общих принципов.
Надо заметить, что, когда почти не было открытого ПО, качество софта было выше, так как было очень дорого тащить в программу лишние зависимости и связанные с ними лишние проблемы.
Плохо, что мы в итоге не договорились о терминологии.
Так значение этой переменной не является частью экземпляра объекта. Что никак не противоречит тому, что сама переменная является частью класса.
У вас много путаницы между именами и значениями.
И что из этого? Я вам могу любое слово употребить в двух и даже десяти разных смыслах. Меня @qw1попросил привести пример использования, и я это сделал.
А с определениями тут очень сложно, так как это первичные понятия.