swift中的运算符重载

2016-06-24  本文已影响34人  不简单的风度

在Swift的官方文档中运算符重载叫做运算符函数(Operator Functions),顾名思义就是对已经有的运算符覆盖定义自己的函数实现。三元运算符(a?b:c)和默认的默认的赋值符(=)是不可重载的。
另外需要注意的是重载方法要写到宏定义中,如果写到某个类文件中会报错
下面给出一个小例子

宏定义文件中的代码:


import UIKit

func *(str: String, index: Int) -> String {
    
    var result = str
    
    for _ in 2...index {
        
        result += str
    }
    return result
}

类文件中对重载方法调用的代码:

func rebuildMethod()
    {
        let u = "abc"
        let v = u * 5
        
        print("the v is :",v)
    }

后续了解到更多会更新。如有错误,欢迎指正。

上一篇 下一篇

猜你喜欢

热点阅读