• [Swift 语法点滴]——数组参数


    Swift语言一如既往的继承了苹果公司卓尔不群的奇葩思维方式,总是要弄得跟别的语言不一样,才能显出它的特殊

    比如用数组作为参数上,这格式实在是没有试出来,找了stackoverflow,才找到相应信息,在此作以总结:

    1.普通常量数组参数:

      Swift和java C#不同,普通的参数是常量型,这也体现了他们重视性能的编程理念,形参在函数中不允许更改,

      代码格式如下:

    1 let a=[1,2,3]
    2 func  b(arr:[Int])
    3 {
    4    println("(arr[0])")
    5 }
    6 b(a)

    2.变量参数:

      声明形参时,需要在形参前用var 修饰,代码:

    var a=[1,2,3]
    func b(var arr:[Int])
    {
        arr[0]=5;
        println("(arr[0])")
    }
    b(a)
    

    但是,实际上,这种传递是值传递,a[0]仍然是1

    3. inout 数组参数:

     声明参数是,需要在形参前加上inout修饰,这才代表是引用传递,形参的改变会反应到实参上。代码:

    var a=[1,2,3]
    func b(inout arr:[Int])
    {
       arr[0]=5
       println("(arr[0])")
    }
    b(&a)
    print("(a[0])")
    

     注意:使用时,传递的是地址,所以实参要使用&来取数组地址

     这次,a[0]在调用函数后,真正改变为5

  • 相关阅读:
    页面布局方案-上固定,下自适应
    页面布局方案-左右固定,中间自适应
    身心疲惫
    生产计划拆分说明-班组绩效匹配算法
    CSS代码片段
    常见内部函数----Python
    pyramid的第一个项目
    2015年大连国际马拉松半程经历
    高效时间管理
    《番茄工作法图解》第四章读书笔记
  • 原文地址:https://www.cnblogs.com/chutianshu1981/p/4365316.html
Copyright © 2020-2023  润新知