2016-01-22 89 views
-2

當閱讀斯威夫特項目,我無法理解下面的代碼:Swift展開使用可選屬性時有什麼區別?和?

self.myTabbar?.addSubview(button) 

在我看來,它應該是這樣的:

self.myTabbar!.addSubview(button) 

爲什麼它是正確使用?

+5

請查看SWIFT文檔https://developer.apple.com/library/ios/documentation/Swift/Conceptual/Swift_Programming_Language/OptionalChaining.html – AlexWoe89

+0

可能的重複[字符串有什麼區別?和字符串! (兩種創建可選變量的方法)?](http://stackoverflow.com/questions/24083842/what-is-the-difference-between-string-and-string-two-ways-of-creating-an- opti) – NSNoob

+0

[Swift語言中感嘆號的含義是什麼?]的可能重複(http://stackoverflow.com/questions/24018327/what-does-an-exclamation-mark-mean-in-the-swift-語言) – Moritz

回答

1

當您使用!你必須確定變量不是零,否則它會崩潰。在這種情況下使用是否正確?因爲addSubview方法只有在變量不是零時才調用它,否則它只是跳過那一行。

相關問題