最新消息:20210917 已从crifan.com换到crifan.org

【已解决】swift中如何写函数的指针类型的引用参数

Swift crifan 1876浏览 0评论

【背景】

swift中需要把一个oc代码:

- (void)tabButtonPressed:(UIButton *)sender
{
  [self setSelectedIndex:sender.tag - TagOffset animated:YES];
}

改写为swift的函数,

结果不知道swift的函数的参数如何写。

s

之前也看到很多swift函数,比如:

public init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: NSBundle?)

public func canPerformUnwindSegueAction(action: Selector, fromViewController: UIViewController, withSender sender: AnyObject) -> Bool

但是觉得语法很是诡异,需要去研究才能看懂。

 

【解决过程】

1.搜:

swift function parameter

参考:

The Swift Programming Language (Swift 2): Functions

Swift from Scratch: Function Parameters, Types, and Nesting – Tuts+ Code Tutorial

搜:

swift function parameter reference

参考:

Does Swift have something like "ref" keyword that forces parameter to be passed by reference? – Stack Overflow

Swift: Pass array by reference? – Stack Overflow

Is Swift Pass By Value or Pass By Reference – Stack Overflow

去加上inout,写为:

    func tabButtonPressed(inout sender:UIButton) {
       
    }

就可以了。

 

【总结】

swift中的函数参数,表示引用参数,指针类型的变量,的话,用inout:

比如:

    func tabButtonPressed(inout sender:UIButton) {

    }

即可。

转载请注明:在路上 » 【已解决】swift中如何写函数的指针类型的引用参数

发表我的评论
取消评论

表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
119 queries in 0.213 seconds, using 23.34MB memory