Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 15557|Yanıt: 0

[İletişim] Geri dönüş varsa, sonunda uygulama sırasını yakalamayı deneyin

[Bağlantıyı kopyala]
Yayınlandı 17.12.2015 12:34:00 | | |
1. İstisna veya istisna olup olmamasından bağımsız olarak, son bloktaki kod çalıştırılır;
2. Deneme ve yakalama oyununda geri dönüş olduğunda, sonunda yine uygulanır;
3. Son olarak, dönüş sonrası ifade işleminden sonra yürütüldü (bu anda, işlemden sonraki değer geri dönmez, ancak döndürülecek değer önce kaydedilir; kod ne olursa olsun, sonunda geri dönen değer değişmez, hatta daha önce kaydedilen değer olsa bile), böylece fonksiyon dönüş değeri nihai çalıştırmadan önce belirlenir;
4. Sonunda return (geri dönüş) özelliğini dahil etmemek en iyisidir, aksi takdirde program erken çıkacak ve geri dönüş değeri deneme veya yakalama bölümünde kaydedilen dönüş değeri değildir.
Örnek:
Durum 1:try{} catch(){}sonunda{} return;
            Görünüşe göre işlem düzenli olarak gerçekleştiriliyor.
Durum 2:try{ return; }catch(){} nihayetinde{} geri dön;
          Program, return blokunda return öncesi kodu çalıştırır (return ifadesindeki ifade işlemi dahil);
         sonra son bloku ve sonunda deneme dönüşünü gerçekleştirin;
         Son olarak, program Try oyununa döndü, bu yüzden artık çalıştırılmıyor.
Durum 3:try{ } catch(){return; } nihayet{} geri dönüş;
         Program try first'ü çalıştırır ve bir istisna ile karşılaşırsa catch block'u çalıştırır,
         Bir istisna varsa, return öncesi kodu (return ifadesindeki ifade işlemi dahil) yakalamada çalıştırın ve ardından son ifadedeki tüm kodu çalıştırın.
                     Son olarak, yakalama blokunda dönüşü gerçekleştirin. Sonunda, 4 yerdeki kod artık çalıştırılmayacak.
         İstisna yok: Denemeyi çalıştır ve sonunda geri dön.
Durum 4:try{ return; }catch(){} nihayetinde{return; }
          Program, return blokunda return öncesi kodu çalıştırır (return ifadesindeki ifade işlemi dahil);
          Sonra son bloğu uygula, çünkü son blokta dönüş var, erken çık.
Vaka 5:try{} catch(){return; }sonunda{return; }
          Program, kodu return öncesinde çalıştırır (return ifadesindeki ifade işlemleri dahil) yakalama blokunda;
          Sonra son bloğu uygula, çünkü son blokta dönüş var, erken çık.
Durum 6:try{ return; }catch(){return; } nihayetinde{dönüş; }
          Program, return blokunda return öncesi kodu çalıştırır (return ifadesindeki ifade işlemi dahil);
          Bir istisna vardır: Return öncesi kodu (return ifadesindeki ifade işlemi dahil) catch block'ta çalıştırın;
                       Sonra final blokunu çalıştırın, çünkü final blokunda return var, bu yüzden erken çıkar.
          İstisna yok: sonra son bloğu tekrar çalıştırın ve erken çıkın çünkü son blokta dönüş var.

Son Sonuç: Try or catch'teki herhangi bir return ifadesi, nihai ifadeden önce yürütülür, eğer nihayet varsa.
                  Sonunda bir iade bildirimi varsa, program geri dönecek, yani ifadesi kesinlikle geri dönecek.
                  Derleyici, return özelliğini sonunda uyarı olarak uygular.




Önceki:.net, içeriği dinlemek için HttpListener kullanır ve engellemeyi önlemek için kullanıcılara yanıt vermek için threads kullanır
Önümüzdeki:VS2013, hızlıca belirli bir kod satırına ulaş, kestirme yol nedir?
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com