《从零开始学Swift》学习笔记(Day 20)——函数中参数的传递引用
来源:互联网 发布:c语言项目开发实战pdf 编辑:程序博客网 时间:2024/06/05 03:26
参数的传递引用
类是引用类型,其他的数据类型如整型、浮点型、布尔型、字符、字符串、元组、集合、枚举和结构体全部是值类型。
有的时候就是要将一个值类型参数以引用方式传递,这也是可以实现的,Swift提供的inout关键字就可以实现。看下面的一个示例:
func increment(inout value:Double, amount:Double = 1.0) {
value += amount
}
var value : Double = 10.0
increment(&value)
print(value)
increment(&value, amount:100.0)
print(value)
代码increment(&value)是调用函数increment,增长量是默认值,其中&value(在变量前面加&符号,取出value地址)是传递引用方式,它在定义函数时,参数标识与inout是相互对应的。
代码increment(&value, amount:100.0)也是调用函数increment,增长量是100.0。
上述代码输出结果如下:
11.0
111.0
类是引用类型,其他的数据类型如整型、浮点型、布尔型、字符、字符串、元组、集合、枚举和结构体全部是值类型。
有的时候就是要将一个值类型参数以引用方式传递,这也是可以实现的,Swift提供的inout关键字就可以实现。看下面的一个示例:
func increment(inout value:Double, amount:Double = 1.0) {
value += amount
}
var value : Double = 10.0
increment(&value)
print(value)
increment(&value, amount:100.0)
print(value)
代码increment(&value)是调用函数increment,增长量是默认值,其中&value(在变量前面加&符号,取出value地址)是传递引用方式,它在定义函数时,参数标识与inout是相互对应的。
代码increment(&value, amount:100.0)也是调用函数increment,增长量是100.0。
上述代码输出结果如下:
11.0
111.0
0 0
- 《从零开始学Swift》学习笔记(Day 20)——函数中参数的传递引用
- 《从零开始学Swift》学习笔记(Day 20)——函数中参数的传递引用
- 《从零开始学Swift》学习笔记(Day 19)——函数参数传递
- 《从零开始学Swift》学习笔记(Day 19)——函数参数传递
- 《从零开始学Swift》学习笔记(Day 17)——Swift中数组集合
- 《从零开始学Swift》学习笔记(Day 17)——Swift中数组集合
- 《从零开始学Swift》学习笔记(Day 1)——我的第一行Swift代码
- 《从零开始学Swift》学习笔记(Day 3)——Swift 2.0之后增加的关键字
- 《从零开始学Swift》学习笔记(Day 3)——Swift 2.0之后增加的关键字
- 《从零开始学Swift》学习笔记(Day 21)——函数返回值
- 《从零开始学Swift》学习笔记(Day 37)——默认构造函数
- 《从零开始学Swift》学习笔记(Day 39)——构造函数重载
- 《从零开始学Swift》学习笔记(Day 40)——析构函数
- 《从零开始学Swift》学习笔记(Day 42)——构造函数调用规则
- 《从零开始学Swift》学习笔记(Day 51)——扩展构造函数
- 《从零开始学Swift》学习笔记(Day 21)——函数返回值
- 《从零开始学Swift》学习笔记(Day 37)——默认构造函数
- 《从零开始学Swift》学习笔记(Day 38)——构造函数与存储属性初始化
- 在Idea下编译solr 6.1源码
- 多线程和多进程的区别(小结)
- robotframework+selenium环境安装
- android Fragment 更新某个UI
- Linphone快速挂断后程序的崩溃问题
- 《从零开始学Swift》学习笔记(Day 20)——函数中参数的传递引用
- [Codeforces 292C] Beautiful IP Addresses (暴力+构造)
- MySQL连接
- Socket通信原理探讨(C++为例)
- Android View 类
- [TYVJ1013]找啊找啊找GF
- BZOJ 1211 [HNOI2004] 树的计数
- 银行卡三元素实名认证
- 侧边栏选中与取消