iphone - Objective C 中嵌套引用的使用

标签 iphone objective-c nested nsmutablearray

在 XCode/ObjC 中收到错误消息“嵌套函数已禁用,请使用 -fnested”等。

这是代码(balls 是一个指向一堆 UIView 的 NSMutableArray)。

CGPoint pos=[[self.balls objectAtIndex:pointidx] center];

但是下面的代码似乎编译正常。

UIView *ref=[self.balls objectAtIndex:pointidx];
CGPoint pos=ref.center;

我应该使用“-fnested-functions”重新启用(如果是这样,我应该将“-fnested-functions”放在哪里)?或者我应该先忍受创建 UIView* 指针的额外步骤?ty .

最佳答案

通常,当您看到嵌套函数警告时,您真正遇到的是语法错误。

<罢工>是pointidx一个整数和 balls NSArray?另外,你有球的属性(property)吗?尝试一下balls而不是self.balls .

<罢工>

编辑: 由于这是编译时的事情,我想它可能不喜欢传递 center到 NSObject.如果您转换该对象会发生什么:

CGPoint pos=[(UIView *)([self.balls objectAtIndex:pointidx]) center];

<罢工> 无关紧要的思考被混淆了。

关于iphone - Objective C 中嵌套引用的使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2130820/

相关文章:

iPhone:拖动以创建新对象

iphone - 下载并保存可以为空白的图像

iphone - 如何使用触摸旋转图像

objective-c - 使 viewWillAppear/viewWillDisappear 中的所有 uitextfields 为空

ios - 根据选定的 TableView 行更新 UILabel

c++ - 在 lambda 设置中访问两步声明的成员

javascript - D3 : use nest function to turn flat data with parent key into a hierarchy

iphone - 尝试设置手势识别时崩溃

ios - 重新定义 SKNode 意味着我必须将节点重新添加为子节点?

asp.net - 中继器内 UpdatePanel 内的 RadioButtonList,我可以吗?