Swift学习笔记(三十三)——常量参数,变量参数和inout参数

(1)一般默认在函数中定义的参数都是常量参数,也就是这个参数你只可以查询使用,不能改变它的值。

(2)如果想要声明一个变量参数,可以在前面加上var,这样就可以改变这个参数的值了。

如:

func getName(var id:String).........

此时这个id值可以在函数中改变。

(3)一般默认的参数传递都是传值调用的,而不是传引用。 所以传入的参数在函数内改变,并不影响原来的那个参数。传入的只是这个参数的副本。


(4)

import Foundation

func swapTwoInts(var a:Int,var b:Int){

  let t = a
  a = b
  b = t
}

var x = 0,y = 100
println("x = \(x) ;y = \(y)")

swapTwoInts(x,y)
println("x = \(x) ;y = \(y)")

此时传入的参数是原来值的副本,所以这个函数并不会交换两个值。

修改方法是使用inout关键字:

import Foundation

func swapTwoInts(inout a:Int,inout b:Int){

  let t = a
  a = b
  b = t
}

var x = 0,y = 100
println("x = \(x) ;y = \(y)")

swapTwoInts(&x,&y)
println("x = \(x) ;y = \(y)")

这样,两个变量的值就真正改变了。


github主页:https://github.com/chenyufeng1991 。欢迎大家访问!

相关文章

Swift 正式开源!Swift 团队很高兴宣布 Swift 开始开源新篇章。自从苹果发布 Swfit 编程语言,就成为了...
快,快,快!动动您的小手,分享给更多朋友! 苹果去年推出了全新的编程语言Swift,试图让iOS开发更简单...
开发者(KaiFaX) 面向开发者、程序员的专业平台! 和今年年初承诺的一样,苹果贴出了Swift语言的源码,...
本文由@Chun发表于Chun Tips :http://chun.tips/blog/2014/12/11/shi-yong-swift-gou-jian-zi-ding-yi...
本文由CocoaChina译者leon(社区ID)翻译 原文:THE RIGHT WAY TO WRITE A SINGLETON 在之前的帖子里聊过...
本文由CocoaChina译者leon(社区ID)翻译 原文:THE RIGHT WAY TO WRITE A SINGLETON 在之前的帖子里聊过...