C ++ 11'de temel algoritmalar yazmaktan kaçınmanızı sağlayan şeylerden biri, standart kütüphanenin sağladığı algoritmalarla birlikte lambdaların kullanılabilirliğidir.
Ben şimdi bunları kullanıyorum ve lanet döngüler tekrar yazmak yerine sadece count_if (), for_each () veya diğer algoritmalar kullanarak ne yapmak istediğinizi söylemek ne kadar inanılmaz.
Tam bir C ++ 11 standart kütüphanesi ile bir C ++ 11 derleyicisini kullandıktan sonra, standart algoritmaları kullanmak için artık iyi bir bahaneniz yok . Lambda onu öldür.
Neden?
Pratikte (algoritmaları kendim bu şekilde kullandıktan sonra), basit sözcüklerle inşa edilen bir şeyi okumak, anlamı bilmek için şifrelenmemeniz gereken bazı döngülerden çok daha kolay geliyor. Bununla birlikte, lambda argümanlarının otomatik olarak çıkarılması, sözdizimini ham döngü ile daha kolay karşılaştırılabilir hale getirmeye çok yardımcı olacaktır.
Temel olarak, standart algoritmalarla yapılan okuma algoritmaları, döngülerin uygulama ayrıntılarını gizleyen kelimeler kadar çok daha kolaydır.
Sadece daha yüksek seviyeli algoritmalar üzerinde düşünmek zorunda olduğumuzu tahmin ediyorum.