美文网首页
为Swift4.0中 的数值类型添加++、--运算符

为Swift4.0中 的数值类型添加++、--运算符

作者: 大齿一鲸 | 来源:发表于2017-10-11 12:15 被阅读21次

    更新Xcode版本到9.0后,突然发现对于如下代码会报错,看到错误我一脸懵逼??

    var i = 1
    
    var a =  i++
    
    

    很简单的代码,为何有错误??把变量修改成Double、Float其他数值类型也是一样的错误,我试着通过Swift的运算符重载功能,添加如下代码支持++前置:

    prefix func ++<T:Numeric>(num: inout T) ->T{
    
    num +=1
    
    return num
    
    }
    

    添加如下代码支持++后置:

    postfix func ++<T:Numeric>(num: inout T) ->T{
    
    num +=1
    
    return num-1
    
    }
    

    添加后,不管是Int/Double都可以使用++了,

    var d:Double = 2.3
    
    var n:Int = 4
    
    d++ ; ++d
    
    n++; ++n
    

    相关文章

      网友评论

          本文标题:为Swift4.0中 的数值类型添加++、--运算符

          本文链接:https://www.haomeiwen.com/subject/oexwyxtx.html