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

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

内容简介:在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


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

查看所有标签

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

精通正则表达式

精通正则表达式

弗里德尔 / 东南大学出版社 / 2005-9 / 72.00元

正则表达式是一种用来操作文本和数据的强大工具。近年来,它们快速广泛传播,并被多种流行工具和语言作为标准特性提供,如Perl、Java、VB.NET、C#(及任何使用.NET框架的语言)、PHP、Python、Ruby、Tcl、MySQL、awk、Emacs等。 如果还未使用过正则表达式,从本书中您将发现一个掌控数据的全新世界。如果使用过它们,您将会充分意识到本书空前的深度和广度。如果您认为自己已经......一起来看看 《精通正则表达式》 这本书的介绍吧!

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

html转js在线工具
html转js在线工具

html转js在线工具