《从零开始学Swift》学习笔记(Day 20)——函数中参数的传递引用

简介:

参数的传递引用

类是引用类型,其他的数据类型如整型、浮点型、布尔型、字符、字符串、元组、集合、枚举和结构体全部是值类型。

有的时候就是要将一个值类型参数以引用方式传递,这也是可以实现的,Swift提供的inout关键字就可以实现。看下面的一个示例:

1
2
3
4
5
6
7
8
9
10
11
func increment(inoutvalue: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




本文转自 tony关东升 51CTO博客,原文链接:http://blog.51cto.com/tonyguan/1746249,如需转载请自行联系原作者

相关文章
|
4天前
|
Swift iOS开发 Kotlin
苹果iOS新手开发之Swift中实现类似Kotlin的作用域函数
Swift可通过扩展实现类似Kotlin作用域函数效果。如自定义`let`, `run`, `with`, `apply`, `also`,增强代码可读性和简洁性。虽无直接内置支持,但利用Swift特性可达成相似功能。
23 7
|
1月前
|
Swift C++ 索引
Swift开发——简单函数实例
函数是编程的基础,用于封装特定功能的代码。它们有关键词func、函数名、参数列表(可为空)和返回类型。多返回值可通过元组、数组、inout参数或可选类型实现。例如,返回元组 `(value1, value2)`,数组 `[value1, value2]` 或使用可选数组 `[[Double]]?`。函数可以作为其他函数的参数,类似闭包或Lambda表达式。在Swift中,示例展示了通过元组、带索引的元组、数组和可选类型返回多个值的函数。还演示了如何使用inout参数交换变量值。
31 5
Swift开发——简单函数实例
|
2月前
Swift4.0判断本函数是否在其它类有相同的方法
Swift4.0判断本函数是否在其它类有相同的方法
26 0
|
2月前
|
存储 API Swift
【Swift开发专栏】Swift函数与闭包的实战应用
【4月更文挑战第30天】本文介绍了 Swift 中函数和闭包的实战应用。首先,函数的基本使用包括定义、参数与返回值、函数类型以及高级技巧如嵌套函数。接着,讨论了闭包的语法,包括无名函数、作为函数参数、简写形式和尾随闭包。最后,展示了函数和闭包在实战中的应用,如排序过滤集合和处理异步任务的回调。
|
2月前
|
存储 Swift
Swift 语言:什么是闭包(Closure)?它们与函数的区别是什么?
Swift 语言:什么是闭包(Closure)?它们与函数的区别是什么?
70 1
|
2月前
|
Swift
Swift中的函数
Swift中的函数
31 1
|
2月前
|
存储 Swift
Swift中,函数和闭包
Swift中,函数和闭包
48 1
|
9月前
|
Swift
swift 闭包简写实际参数名$0、$1等理解
swift 闭包简写实际参数名$0、$1等理解
48 0
|
9月前
|
Swift iOS开发
23 Swift中如何定义和使用函数
Swift中如何定义和使用函数
70 0
|
10月前
|
Swift
Swift Debug 和 Release 中 print() 函数调试切换
Swift Debug 和 Release 中 print() 函数调试切换
56 0