inout

作者: 某个胖子 | 来源:发表于2017-09-05 12:12 被阅读8次

    inout:

    • 让值类型以引用方式传递(即传递的是内存地址),这样以后的操作会影响原始数据。
    • inout修饰的参数不能有默认值,且 有范围的参数集合也不能用inout修饰
    • 修饰参数的inout var let 不能并存,即 如果参数用inout修饰,就不能使用 var let修饰。

    例子:

        var value = 50
        print(value)  // 此时value值为50
        func increment( num: inout Int, length: Int = 10) {
            num += length
        }
        increment(num: &value)
        print(value)  // 此时value值为60,成功改变了函数外部变量value的值
    
    • 声明函数 increment,在参数中使用inout 修饰,函数内部实现修改 外部值类型变量。
    • 调用函数,传入参数时,在参数值前面加&符号修饰,表明此变量值在函数内部是可以被改变的。

    相关文章

      网友评论

          本文标题:inout

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