码迷,mamicode.com
首页 > 编程语言 > 详细

swift学习之关键字inout

时间:2015-08-01 20:43:11      阅读:126      评论:0      收藏:0      [点我收藏+]

标签:

  一般参数仅仅是在函数内可以改变的,当这个函数执行完后变量就会被销毁,不会有机会改变函数以外的变量,那么我们就会产生一个疑问,我们可不可以通过一个函数改变函数外面变量的值呢?答案是肯定的,这时我们就需要用到inout关键字了

  声明函数时,在参数前面用inout修饰,在函数内部实现改变外部参数,注意,这里只能传入变量,不能传入常量和字面量,因为这些是不能变的一旦定义,当我们传入的时候,在变量名字前面用&符号修饰表示,传递给inout参数,表明这个变量在参数内部是可以被改变的

注意:inout修饰的参数是不能有默认值的,有范围的参数集合也不能被修饰,另外,一个参数一旦被inout修饰,就不能再被var和let修饰了

override func viewDidLoad() {
        super.viewDidLoad()
        var someInt = 7
        var anotherInt = 107
        swapTwoInts(&someInt, b: &anotherInt)
        print("someInt is \(someInt),anotherInt is \(anotherInt)")
    }

    func swapTwoInts(inout a:Int , inout b:Int) {
        let temp = a
        a = b
        b = temp
    }


版权声明:本文为博主原创文章,未经博主允许不得转载。

swift学习之关键字inout

标签:

原文地址:http://blog.csdn.net/rainshenji/article/details/47189007

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!