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

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

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


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

查看所有标签

猜你喜欢:

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

算法

算法

Robert Sedgewick、Kevin Wayne / 人民邮电出版社 / 2012-3 / 99.00元

《算法(英文版•第4版)》作为算法领域经典的参考书,全面介绍了关于算法和数据结构的必备知识,并特别针对排序、搜索、图处理和字符串处理进行了论述。第4版具体给出了每位程序员应知应会的50个算法,提供了实际代码,而且这些Java代码实现采用了模块化的编程风格,读者可以方便地加以改造。本书配套网站提供了本书内容的摘要及更多的代码实现、测试数据、练习、教学课件等资源。 《算法(英文版•第4版)》适合......一起来看看 《算法》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

MD5 加密
MD5 加密

MD5 加密工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换