Вопросы с тегом «lambda»

НЕ ИСПОЛЬЗУЙТЕ ДЛЯ СЕРВИСА AWS (используйте [aws-lambda] для этих вопросов!). Лямбды - это анонимные функции или замыкания в таких языках программирования, как Lisp, C #, C ++, Lua, Python, Ruby, JavaScript или Java. (Также лямбда-выражение.)

4
Понимание Spliterator, Collector и Stream в Java 8
У меня возникают проблемы понимания Streamинтерфейса в Java 8, особенно там , где он должен делать с Spliteratorи Collectorинтерфейсов. Моя проблема в том, что я пока просто не могу понять Spliteratorи Collectorинтерфейсы, и в результате Streamинтерфейс для меня все еще несколько неясен. Что такое «а» Spliteratorи «а» Collectorи как их …

6
Какого типа лямбда-выражения выводятся с помощью «auto» в C ++ 11?
У меня было ощущение, что тип лямбда - это указатель на функцию. Когда я выполнил следующий тест, я обнаружил, что это неправильно ( демо ). #define LAMBDA [] (int i) -> long { return 0; } int main () { long (*pFptr)(int) = LAMBDA; // ok auto pAuto = LAMBDA; …
142 c++  lambda  c++11  typeof  auto 

7
Почему нельзя присвоить var анонимный метод?
У меня такой код: Func<string, bool> comparer = delegate(string value) { return value != "0"; }; Однако следующее не компилируется: var comparer = delegate(string value) { return value != "0"; }; Почему компилятор не может понять, что это Func<string, bool> ? Он принимает один строковый параметр и возвращает логическое значение. …

3
Как сортировать с лямбдой?
sort(mMyClassVector.begin(), mMyClassVector.end(), [](const MyClass & a, const MyClass & b) { return a.mProperty > b.mProperty; }); Я хотел бы использовать лямбда-функцию для сортировки пользовательских классов вместо привязки метода экземпляра. Однако приведенный выше код дает ошибку: ошибка C2564: 'const char *': преобразование стиля функции во встроенный тип может принимать только один …
138 c++  sorting  lambda  char  const 

6
Необязательный orElse Необязательный в Java
Я работал с новым опциональным типом в Java 8 , и я столкнулся с тем, что кажется обычной операцией, которая не поддерживается функционально: "orElseOptional" Рассмотрим следующую схему: Optional<Result> resultFromServiceA = serviceA(args); if (resultFromServiceA.isPresent) return result; else { Optional<Result> resultFromServiceB = serviceB(args); if (resultFromServiceB.isPresent) return resultFromServiceB; else return serviceC(args); } Существует …
137 java  lambda  java-8  optional  java-9 

2
Является ли этот объект-расширение-срок-закрытие ошибкой компилятора C #?
Я отвечал на вопрос о возможности закрытия (законно) продления времени жизни объектов, когда столкнулся с каким-то чрезвычайно любопытным генератором кода со стороны компилятора C # (4.0, если это имеет значение). Самое короткое повторение, которое я могу найти, следующее: Создайте лямбду, которая захватывает локальный при вызове статического метода содержащего типа. Назначьте …

4
Можно ли выяснить тип параметра и тип возврата лямбда?
Учитывая лямбду, возможно ли выяснить ее тип параметра и тип возвращаемого значения? Если да, то как? В принципе, я хочу, lambda_traitsкоторый может быть использован следующими способами: auto lambda = [](int i) { return long(i*10); }; lambda_traits<decltype(lambda)>::param_type i; //i should be int lambda_traits<decltype(lambda)>::return_type l; //l should be long Мотивация заключается в …

7
Переменная, используемая в лямбда-выражении, должна быть окончательной или фактически окончательной.
Переменная, используемая в лямбда-выражении, должна быть окончательной или фактически окончательной. Когда я пытаюсь использовать, calTzон показывает эту ошибку. private TimeZone extractCalendarTimeZoneComponent(Calendar cal, TimeZone calTz) { try { cal.getComponents().getComponents("VTIMEZONE").forEach(component -> { VTimeZone v = (VTimeZone) component; v.getTimeZoneId(); if (calTz == null) { calTz = TimeZone.getTimeZone(v.getTimeZoneId().getValue()); } }); } catch (Exception e) …
134 java  lambda 

1
Что такое «тип SAM» в Java?
Читая спецификацию Java-8, я постоянно вижу ссылки на «типы SAM». Я не смог найти четкого объяснения, что это такое. Что такое тип SAM и каков пример его использования?
133 java  lambda  java-8 

9
Использование делегата действия в C # [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 2 года назад . Улучшить этот вопрос Я работал с делегатами действий на C # …
132 c#  lambda  delegates  action 



2
Лямбда-захват и параметр с тем же именем - кто затеняет другого? (clang против gcc)
auto foo = "You're using g++!"; auto compiler_detector = [foo](auto foo) { std::puts(foo); }; compiler_detector("You're using clang++!"); clang ++ 3.6.0 и новее распечатайте "Вы используете clang ++!" и предупредить о неиспользовании захвата foo . g ++ 4.9.0 и новее распечатайте «Вы используете g ++!» и предупредить о неиспользовании параметра foo …

6
Лямбда возвращается сама: это законно?
Рассмотрим эту довольно бесполезную программу: #include <iostream> int main(int argc, char* argv[]) { int a = 5; auto it = [&](auto self) { return [&](auto b) { std::cout << (a + b) << std::endl; return self(self); }; }; it(it)(4)(6)(42)(77)(999); } По сути, мы пытаемся сделать лямбду, которая возвращает сама себя. …

2
Захватывают ли лямбда-выражения c ++ 11 переменные, которые они не используют?
Когда я использую, [=]чтобы указать, что я хотел бы, чтобы все локальные переменные были захвачены по значению в лямбде, приведет ли это к тому, что все локальные переменные в копируемой функции или только все локальные переменные , которые используются лямбда ? Так, например, если у меня есть: vector<int> my_huge_vector(100000); int …
124 c++  lambda  c++11 

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.