2015-03-25 31 views

回答

0

You Xcode不會在不正確的代碼行崩潰?

這不回答這個問題,但重要的是要注意的:

When you are not sure about an optional variable, you have to verify if it contains value or not, by using a pattern like this: 

var myOptional : String? 
if let aString = myOptional { 
    //do your work with aString. 
} 
+0

那不是...... /:| – Radu 2015-09-17 19:53:20

-2

基本上可選的值是什麼「?」當你放置?在數據類型是可選的之後,如果解包並且nil出現,那麼它沒有錯誤,但是它放置了「!」數據類型後感歎號那麼如果它解開變量和nil出現再有就是崩潰或錯誤,以便經常使用可選的

var myVariable : DataType ? = DataType() 
or 
var myVariable : DataType ? = nil 
or 
var myVariable : DataType ? = value 

斯威夫特可選的是,可以容納一個值或一個變量沒有值。可選項是通過附加一個?該類型:

var myOptionalString:String? = "Hello" 

有些地方自選是有用的:

  • 當屬性可以在那裏或不在那裏,像中間名或配偶 在Person類
  • 當一個方法可以返回一個值或沒有任何值,如 搜索數組中的匹配
  • 當一種方法可以返回結果或得到錯誤並且 不返回
  • 代理屬性(並不總是必須設置)
  • 對於類中的弱性質。他們指出,可以
    的事情被設置成零
  • 對於可能被釋放到
    回收內存

https://medium.com/@rrridges/swift-optionals-a10dcfd8aab5

34

這裏大量資源的至少一半的答案(才肯其他受訪者請先閱讀該問題!):使用模擬器代替實際的iOS設備。

調試器似乎非常擅長指向可能導致麻煩的惡意程序選項,除非您像我一樣,選擇直接在iOS設備上直接運行代碼。在後一種情況下,調試器使我處於某些彙編代碼的中間,沒有明顯的堆棧跟蹤。切換回模擬器會給出確切的錯誤代碼行。

+1

謝謝,那太好了。很高興知道! – 2016-05-02 16:47:01

+2

這是我需要知道的。我得到*問題是什麼,但是我需要弄清楚問題出在哪裏才能解決問題,而且我一直在盲目猜測的斷點都沒有被擊中。 – 2016-12-30 00:48:18

+0

爲我工作。有時Xcode是這樣的屁股......這是有技術原因嗎? – CW0007007 2017-09-19 15:14:48

相關問題