Xcode 7.2,Swift 2.0: 下面的代码打印" 15()"在调试区域。我原以为它打印" 15 1"。为什么要打印括号?
var n = 15
print(n, n /= 10)
答案 0 :(得分:5)
这是因为n /= 15
表达式返回Void
,因为/=
运算符在Swift中返回Void
。我们可以从它的声明中看到:
public func /=<T : _IntegerArithmeticType>(inout lhs: T, rhs: T)
因为在Swift中,Void
是空元组的别名:
/// The empty tuple type.
///
/// This is the default return type of functions for which no explicit
/// return type is specified.
public typealias Void = ()
传递给print
的第二个参数/表达式打印为()
。
答案 1 :(得分:2)