如何在Swift 3中使用%作为后缀一元运算符来计算百分比并仍然可以使用%来模数?

我将% token作为post-fix操作符来声明,以便计算百分比,但Xcode报告

 `% is not a postfix unary operator` 

我的testing代码是基于这里find的一个例子。 我也检查了苹果公司的最新文档的运算符声明的语法,但它不知道为什么Xcode抱怨。

如何使用%计算百分比? 并假设我得到它的工作,然后我将如何恢复使用%在同一类别的其他function的模操作?

有人可以提供一个基于我在Playground中的代码的工作示例吗?

1.%含义百分比

 postfix operator % var percentage = 25% postfix func % (percentage: Int) -> Double { return (Double(percentage) / 100) } 

2. 剩余 百分比

 let number = 11 let divisor = 7 print(number % divisor) 

移动

 var percentage = 25% 

 postfix func % (percentage: Int) -> Double { return (Double(percentage) / 100) } 

像这样

 postfix operator % postfix func % (percentage: Int) -> Double { return (Double(percentage) / 100) } var percentage = 25% 

原因 :您的代码可以在应用程序中运行,但不能在操场上运行,因为操场会从上到下解释代码。 它没有看到位于var percentage下面的postfix func声明,所以在var percentage它会给你一个错误,因为它还不知道如何处理它。

 postfix operator % postfix func % (percentage: Int) -> Double { return (Double(percentage) / 100) } var percentage = 25% 8%3 

在操作系统Xcode 8.1中工作

这对我有用:

 postfix operator % postfix func % ( percentage: Int) -> Double { return Double(percentage) / 100 } print(25%) // prints 0.25 print(7%5) // prints 2