swift3.0 常量参数和变量参数(Constant and Variable Parameters)

常量参数:

无论是swift2.0还是swift3.0中,默认的参数都是常量参数。

变量参数:

在swift2.0中,通过在参数名前加关键字 var 来定义变量参数,如下:

func play(num1: Int, num2: Int,var sum: Int,var mius: Int) {

sum = num1 + num2

mius = num1 - num2

}

在swift3.0中,var 定义变量参数的方式就被取消了。(原因请看

注意:对变量参数所进行的修改在函数调用结束后便消失了,并且对于函数体外是不可见的。变量参数仅仅存在于函数调用的生命周期中。

如果你还坚持要修改参数的值,你可以试试

输入输出参数(In-Out Parameters)

使用方式:在参数类型的前面加关键字inout修饰,而且你只能传入一个变量作为输入输出参数。你不能传入常量或者字面量,因为这些量是不能被修改的。当传入的参数作为输入输出参数时,需要在参数前加&符,表示这个值可以被函数修改。如下:

func play(num1: Int, num2: Int, sum: inout Int, mius: inout Int) {

sum = num1 + num2

mius = num1 - num2

}

var sum = 0, mius = 0

play(num1: 10, num2: 20, sum: &sum, mius: &mius)

注意:使用输入输出参数修改参数的值,这些修改在函数调用结束后仍然存在)。

(如有不正确之处,请留言)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young阅读 3,881评论 1 10
  • 前言:1.此文中的语法会根据Swift的升级变动而更新。2.如果需要请移步 -> swift2.2 语法(上)、...
    珍此良辰阅读 535评论 2 2
  • 渲染: 1 当前屏幕渲染:在GPU的当前屏幕缓冲区中进行的渲染 2 离屏渲染:在GPU当前屏幕缓冲区外另建缓冲区渲...
    adrian920阅读 401评论 0 0
  • Swift 介绍 简介 Swift 语言由苹果公司在 2014 年推出,用来撰写 OS X 和 iOS 应用程序 ...
    大L君阅读 3,301评论 3 25
  • 喜欢拉萨,喜欢拉萨那沐在懒懒的岁月河流里的柔软时光,待在这里,去慢慢品味那只属于拉萨的从骨子里透出来的闲散和温暖。...
    阿琪曲珍阅读 231评论 0 1