Wpis z mikrobloga

Cze, jaki jest sens używania wyrażeń lambda/funkcji anonimowych? Do czego służą te wyrażenia i w jaki sposób ich zastosowanie może pomóc mi w moich projektach? Obecnie programuje zawodowo w PHPie i czasem zdarza mi się napisać anonimową funkcję (szczególnie jak kod wraca z CR ( ͡° ͜ʖ ͡°)), mimo to nie do końca rozumiem dlaczego nie lepiej napisać zwykłą metodę, którą będziemy mogli wykorzystać w przyszłości w innych miejscach. W wolnym czasie tworzę silnik 2D w #cpp na potrzeby przyszłej gry RPG i nie odczułem do tej pory potrzeby żeby skorzystać z wyżej wymienionych rozwiązań, a muszę przyznać, że temat tych wyrażeń chodzi mi dosyć często po głowie.
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mowmivector: zapamiętywanie kontekstu w capture list. Bez tego musiałbyś tworzyć odrębne klasy wrappery przechwytujące obiekty używane w ramach kolejnych wywołań. No i jeszcze predykaty do filtrowania/wyszukiwania - na ogół to są szczególne przypadki, nie powtarzające się w innych miejscach w kodzie i raczej nie opłaca się przenosić kodu z lambdy do ogólnodostępnej funkcji (np. x jest równe **jakaś_stała**).
  • Odpowiedz
@mowmivector: Czynia kod znacznie czytelniejszy oraz pozwalaja na wiele rzeczy jako captures ktore ciezko zeobic bez nich ¯\(ツ)
Najlepiej jakbys popracowal w projekcie w ktorym sa uzywane to bys zobaczyl w praktyce.
  • Odpowiedz