我正在按照教程(http://youtube.com/watch?v=xvvsG9Cl4HA 19分20秒)并使他的代码看起来整洁,他把一些放在像这样的新线路上
if let myPlacement = myPlacements?.first { let myAddress = "\(myPlacement.locality) \ (myPlacement.country) \ (myPlacement.postalCode)" }
.但是,当我尝试时,我得到一个错误
unterminated string literal
和
consecutive statements on a line must be seperated by a ';'
但是教程中的人完全以同样的方式完成了它.这是怎么回事?我正在使用最新的swift和最新的xcode 7.2任何帮助都会被贬低
如果我像这样在同一条线上写所有东西
if let myPlacement = myPlacements?.first { let myAddress = "\(myPlacement.locality) \(myPlacement.country) \(myPlacement.postalCode)" }
它工作得很好
如果我像这样在同一条线上写所有东西
嗯,这是你的答案.您不能像在第一个示例中那样将字符串文字拆分为多行.有些语言允许这样做,但Swift不是其中之一.这不合法:
let s = "hello there"
没有神奇的线条延续字符,放在第一行的末尾,会使其合法化.
如果窗口比线条窄,则编辑器可以包裹该线条以用于显示目的; 但是你不能在字符串文字中放入实际的换行符.
您可以通过组合(连接)多个字符串文字来解决这个问题,如果您认为这样可以提高可读性.例如,这是合法的:
let myAddress = "\(myPlacement.locality) " + "\(myPlacement.country) " + "\(myPlacement.postalCode)"