Как автоматически связать или автоматически назначить мой драйвер USB на устройство USB?

Название «лямбда» - это просто исторический артефакт. Все, о чем мы говорим, это выражение, значение которого является функцией.

Простым примером (с использованием Scala для следующей строки) является:

args.foreach(arg => println(arg))

, где аргумент foreach метод является выражением для анонимной функции. Вышеупомянутая строка более или менее такая же, как запись чего-то вроде этого (не совсем настоящий код, но вы получите эту идею):

void printThat(Object that) {
  println(that)
}
...
args.foreach(printThat)

, за исключением того, что вам не нужно беспокоиться:

  1. Объявление функции в другом месте (и ее нужно искать при повторном просмотре кода позже).
  2. Именование чего-то, что вы используете только один раз.

Как только вы привыкли к функциям значений, необходимость обойтись без них кажется такой же глупой, как требуется для обозначения каждого выражения, например:

int tempVar = 2 * a + b
...
println(tempVar)

вместо написания выражение, в котором оно вам нужно:

println(2 * a + b)

Точная нотация варьируется от языка к языку; Греческий язык не всегда требуется! ; -)

0
задан shadow 16 January 2019 в 16:00
поделиться