SORU
12 Ocak 2010, Salı


Avantajları std::for_each döngü için

for döngü std::for_each herhangi bir avantajı var mı? Bana, std::for_each tek kod okunabilirliği engel gibi görünüyor. Neden bazı kodlama standartlarının kullanımı tavsiye edersiniz?

CEVAP
12 Ocak 2010, Salı


C 11 ile güzel bir şey (önceki adıyla C 0 x), bu yorucu tartışmalar çözülür.

Bütün bir koleksiyon üzerinde yineleme isteyen aklı başında, hala kimse bunu kullanır diyorum

for(auto it = collection.begin(); it != collection.end() ;   it)
{
   foo(*it);
}

Ya da bu :

for_each(collection.begin(), collection.end(), [](Element& e)
{
   foo(e);
});

alan aralığı için-döngü sözdizimi kullanılabilir:

for(Element& e : collection)
{
   foo(e);
}

Bu tür sözdizimi kullanılabilir Java ve C# için biraz zaman şimdi, ve aslında çok daha fazla foreach döngüler daha klasik for döngüler her son Java veya C# kodu gördüm.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Andrew_Huang

    Andrew_Huang

    10 ŞUBAT 2006
  • cyriak

    cyriak

    29 Mart 2006
  • Google Россия

    Google Ро

    9 Temmuz 2007