yapmak zaman onun denilen ve beklenmedik bir şey olur?nasıl geçerli kod</p> <pre><code>class HelloWorld { func foobar() { // ... } } </code></pre> <p>Nasıl bu fonksiyon atmak istisna yapmak do İşte Swift 2 fonksiyon atmak istisna
cevap
Swift belgelere:
bir işlev veya yöntem bir hata atabilir belirtmek için Hatalar
Fırlatma, onun parametrelerden sonra, onun bildiriminde anahtar kelimeyi atar yazın. bir dönüş türü belirtirse, dönüş okundan (->) önce throws anahtar kelimesini yazarsınız. Açıkça belirtilmedikçe, bir işlev, yöntem veya kapatma bir hatasını alamaz. Orada
Hata'nın çeteleler kullanılarak temsil edilen Apple's documentation burada bu konu hakkında bilgi hazinesi, yani bunu yapmak için
throw
anahtar kelime kullanmak sonra bir enum üzerinden mi olacak bazı hata oluştur
.
örnek:
enum MyError: ErrorType{
case FooError
}
func foobar() throws{
throw MyError.FooError
}
Öncelikle, kullanarak hataları çağırabilir, hatalarınızı içeren bir enum oluşturmak ve sonra ErrorType
protokol
enum MyError: ErrorType{
case Null
case DivisionByZero
}
uygular olabilir throw
throw MyError.DivisionByZero
Yani, bir bölümü işlev olabilir bu gibi görünün
func divide(x: Int, y: Int) throws -> Float{
if(y == 0){
throw MyError.DivisionByZero
}
else{
return x/y
}
}
Bu işlev 'docatch' yöntemiyle nasıl çağrılır? Örneğin, "checkisValidIntValue (x: 10, y: 20); func checkisValidIntValue (x: Int, y: Int) {guard x> 0 else {att some.Error} throw değeri = deneyin? bölmek (x: x, y: y) // ... burada başarı değeri olduğunda ne yapmalı ve başarısızlık değerini atmak istiyorum, ouptu değeriyle aynı işlevi yerine getirmek – user3589771
- 1. java istisna atmak dönüş
- 2. <Func <T, object>>
- 3. <Func <T, string>>
- 4. Dinamik İfade Oluşturma <Func<T,Y>>
- 5. Git, <<<<<<< HEAD dosyasına
- 6. <: <İş nasıl?
- 7. Nasıl ifade edilir? <Func<T,bool>> Expression <Func<T>>
- 8. Swift'de bir ebeveyn/süper sınıfa nasıl başvuru yapılır? <code>A</code> Bu örnekte <code>B</code> devralır</p> <pre><code>class A { } class B:A { } </code></pre> <p>:
- 9. Func <T>() vs Func <T> .Invoke()
- 10. Func <T> nasıl Ekspres <Func<T>> için dönüştürülür?</p> <p>bu satırların her ikisi derlemek:
- 11. "<%:" ne yapıyor?</p> <pre><code><%: Model.FirstName %> </code></pre> <p>"<%:" Ne vermez: do
- 12. C# Func için Func <T1, object> dönüştürme <T1, T2>
- 13. dönüştürme İfade İfade için <Func <T, T2, bool>><Func <T2, bool>> T
- 14. "Radiobutton" işaretli mi kontrol edilir?</p> <pre><code>regAuxiliar = ultimoRegistro; </code></pre> <p>Ve Radiobuton:
- 15. Şu izle ifadem tutan bana gösteriyor Şu anda bir</p> <pre><code>Expression<Func<T,bool>> </code></pre> <p>bir</p> <pre><code>Expression<Func<T,object>> </code></pre> <p>dönüştürmek çalışıyorum
- 16. Func oluşturma <IQueryable <TEntity>, IOrderedQueryable <TEntity>> dinamik olarak?
- 17. Dinamik türlerle ilgili açıklamalara göz atmak için <a0></ a0>
- 18. Bu kod neden bir NullPointerException vermiyor? kod snippet'idir bir NullPointerException atmak değil</em></strong><strong><em>neden yaptığını isterim
- 19. HTML5 Dosya API: Nasıl <code>readAsText()</code> fonksiyon sonucu tamamlandıktan
- 20. Bir Tuple <string, string, Func <bool>>
- 21. Moq framework Func <T,T>
- 22. Nasıl çalışır? Ben kullanımını bilmek istiyorum</p> <pre><code>get '/:key' do |key| </code></pre> <p>:
- 23. bash:</p> <pre><code>./my_script.py a_file & </code></pre> <p>... <code>.my_format</code> ile sona geçerli klasördeki tüm dosyalar üzerinde, bu yüzden yapmak: ve &
- 24. Ayrıştırma iç içe fonksiyon Ben fonksiyon şeklinde çağrıları ayrıştırmak için <code>pyparsing</code> kullanmaya çalışıyorum
- 25. Func <TObject, bool> veya <TObject> Predicate?
- 26. Doğru <2 nasıl uygulanır?
- 27. Yeteneklerimden özel bir istisna mesajı nasıl belirleyebilirim? Benim <code>ability.rb</code> yılında
- 28. ActivityManager <kullanıcı izni> izin Bu adlandırılmış, istisna gidiyor
- 29. böyle nasıl 2 <code>parameters</code> aldığımız bir <code>class</code> bir <code>method</code> var C#
- 30. Java, bitshifts kullanırken, neden 1 << 32! = 1 << 31 << 1?
dokümanlar yararlıdır. Bir soru göndermeden önce bir göz atmalısınız. –