2016-11-11 20 views

cevap

17

Evet, ? işleci, try!() ürününe eşdeğerdir. ?, şimdi kararlı bir şekilde Rust 1.13, released on November 10, 2016.

Şu an en iyi dokümantasyon kaynağı şu an RFC 0243 görünüyor. RFC'de açıklanan catch'un henüz bu yazımda uygulanmadığını unutmayın (issue).

+0

Hataların dönüştürülmesinde makroyla karşılaştırıldığında sınırlamalar olduğunu hatırlıyorum; sonunda çözüldü mü? –

+2

@MatthieuM. RFC'ye göre, aynı hata dönüşümü yapar: 'Şu anki deneyin!() makrosu gibi,? Operatör ayrıca istisna tipinde bir "upcast" gerçekleştirir. Ancak, RFC'nin sadece bir kısmının uygulandığı, aslında şu anda dilde neyin olduğuna dair kesin bir dokümantasyona sahip olduğu göz önüne alındığında, güzel olacak. :-) –

+2

'?' Taşıyıcı özelliği kullanır ve bu nedenle, tür çıkarımı, 'try!()' Kullanıldığında olduğundan biraz farklıdır; İkincisi 'Sonuç' özeldir. – bluss

İlgili konular