ios – in in CGPoint *作为参数意味着什么?

栏目: IOS · 发布时间: 6年前

内容简介:在UIScrollView委托方法中,有:scrollViewWillEndDragging:withVelocity:targetContentOffset:最后一个参数是:

在UIScrollView委托方法中,有:

scrollViewWillEndDragging:withVelocity:targetContentOffset:

最后一个参数是:

(inout CGPoint *)targetContentOffset

我很好奇inout意味着什么以及为什么CGPoint是一个指针.我尝试将targetContentOffset打印到控制台,但我不知道该怎么做.任何帮助表示赞赏!

这意味着该参数用于发送数据,但也用于获取数据.

让我们看一个示例实现:

- (void)increment:(inout NSUInteger*)number {
    *number = *number + 1;
}


NSUInteger someNumber = 10;
[self increment:&someNumber];
NSLog(@"Number: %u", someNumber); //prints 11

此模式通常与C结构一起使用,例如CGPoint,因为它们通过值传递(复制).

另请注意,inout并非绝对必需,但它有助于编译器理解代码的含义,并在优化时做得更好.

还有单独的输入和输出声音,但据我所知,当你滥用它们时没有编译器警告,而且似乎Apple不再使用它们了.

翻译自:https://stackoverflow.com/questions/18856415/what-does-inout-cgpoint-mean-as-a-parameter


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

程序员修炼之道

程序员修炼之道

Andrew Hunt、David Thomas / 马维达 / 电子工业出版社 / 2005-1 / 48.00元

《程序员修炼之道》由一系列的独立的部分组成,涵盖的主题从个人责任、职业发展,直到用于使代码保持灵活、并且易于改编和复用的各种架构技术。利用许多富有娱乐性的奇闻轶事、有思想性的例子以及有趣的类比,全面阐释了软件开发的许多不同方面的最佳实践和重大陷阱。无论你是初学者,是有经验的程序员,还是软件项目经理,本书都适合你阅读。一起来看看 《程序员修炼之道》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试