猿问

带隐式展开选项的SWIFT 3不正确的字符串插值

带隐式展开选项的SWIFT 3不正确的字符串插值

为什么隐式展开选项在SWIFT 3中使用字符串插补时不打开吗?

在操场上运行以下代码

var str: String!str = "Hello"print("The following should not be printed as an optional: \(str)")

产生这个输出:

The following should not be printed as an optional: Optional("Hello")

当然,我可以将字符串与+运算符,但我在我的应用程序中几乎到处使用字符串插值,现在由于这个(bug?)而不再工作了。

这是一个错误,还是他们故意改变这种行为与SWIFT 3?


holdtom
浏览 500回答 3
3回答

DIEA

虽然与Obj-C相比,我意外地爱上了SWIFT,但我必须承认,我的编码工作似乎有75%是直接或间接地涉及到纠正可选变量需求。对于一个足够简单的问题来说,这是一项惊人的努力:一个对象是否为零?当然,肯定有更好的选择(双关意)。

喵喔喔

给出的解释很好。需要给出这一解释的事实是不需要的。我与SWIFT的合作越多,我就越觉得他们只是用另一种类型取代了objc中的一种复杂性,而且最终,使用其中一种或另一种也同样困难。这类东西应该如何使程序员的生活更容易,这是我无法想象的。
随时随地看视频慕课网APP
我要回答