SORU
27 Kasım 2008, PERŞEMBE


İç içe geçmiş bir döngü kesiliyor

Eğer iç içe olan bir for döngüsü var, nasıl verimli bir şekilde her iki döngüler (iç ve dış gel en hızlı şekilde yapabilir miyim?

Bir boolean kullanımı ve söylemek zorunda o zaman başka bir yöntem, fakat aslında sadece dış döngü sonra kodu ilk satırı yürütmek zorunda kalmak istemiyorum.

Bu bahsettiğim hızlı ve iyi yolu nedir?

Teşekkürler


İstisnalar ucuz/sadece gerçekten olağanüstü bir durumda atılmalı vs. olmadığını düşünüyordum. Dolayısıyla bu çözüm performansı açısından iyi olacağını sanmıyorum.

Hemen yeni özelliklerden yararlanmak için hissetmiyorum .Çok temel olan bir şey yapmak için NET (anon yöntemleri).

Çünkü o, tvon (özür dilerim tam kullanıcı adı yazamıyorum!) güzel bir çözümü var.

Marc: anon yöntemleri çok İyi kullanıyor, ve bu da sürümü kullanmıyoruz bir iş olabilir, çünkü büyük ama .Anon yöntemleri destekleyen, geleneksel bir yaklaşım olduğunu bilmeliyim. NET/C#

CEVAP
28 Kasım 2008, Cuma


Peki, "" ama bu çok çirkin... ve her zaman mümkün olmaz. git Bir yöntem de içine döngüler (ya anon-method) ve "ana kod. geri çıkmak için" return kullanabilirsiniz

        // goto
        for (int i = 0; i < 100; i  )
        {
            for (int j = 0; j < 100; j  )
            {
                goto Foo; // yeuck!
            }
        }
    Foo:
        Console.WriteLine("Hi");

        // anon-method
        Action work = delegate
        {
            for (int x = 0; x < 100; x  )
            {
                for (int y = 0; y < 100; y  )
                {
                    return; // exits anon-method
                }
            }
        };
        work(); // execute anon-method
        Console.WriteLine("Hi");

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Defence Videos

    Defence Vide

    13 Mayıs 2013
  • NewsyTech

    NewsyTech

    2 AĞUSTOS 2010
  • Ralph Phillips

    Ralph Philli

    5 Aralık 2006