NSIndexPath getIndexes方法…怎么样?

我对使用此方法和将其列为(void)方法的文档感到困惑。 “在返回索引路径的索引时” 它在哪里也会返回什么? 不应该是:
- (NSIndexPath *)getIndexes:(NSUInteger *)indexes
getIndexes: 提供对索引路径索引的引用。
- (void)getIndexes:(NSUInteger *)indexes
参数 索引 指向无符号整数数组的指针。返回时,索引路径的索引。 可用性 适用于iOS 2.0及更高版本。 宣告进入 NSIndexPath.h     
已邀请:
您必须分配大小为[indexPath length]的NSUInteger数组并将其作为参数传递。返回值将写在那里。您必须自己释放该数组,或者不执行任何在堆栈上创建的数据,如下所示:
NSUInteger array[[indexPath length]];
[indexPath getIndexes: array];
    
也许下一句话解释了原因   开发人员有责任为C阵列分配内存。 它实际上是一个指向C数组的指针,它将为您填充索引,因此没有理由从函数中另外返回它 - 您已经知道它的地址。 您可以使用以下功能
NSUInteger indexCount = [indices count];
NSUInteger buffer[indexCount];
[indices getIndexes:buffer maxCount:indexCount inIndexRange:nil];
    
您将该消息发送到NSIndexPath的实例,因此返回一个将无济于事。 -getIndexes:方法使用索引路径中的索引填充数组'indexes'。所以你要做的事情如下:
NSUInteger *indexes = calloc([indexPath length], sizeof(NSUInteger));
[indexPath getIndexes:indexes];
之后,索引将填充indexPath中的索引值。     
马克斯,托马斯和迦勒,我已经尝试了所有这三种方法,并且无法获得任何工作,所以可能会过快地解雇已接受的解决方案.....但可能更有可能我只是没有得到它?我无法获得正确的数组大小,以循环它来访问我的表中所需的行。虽然我会对5行的组返回一个有5行的数组,每行保持
NSUIntegr
.....或者到目前为止它离开它令人尴尬?     

要回复问题请先登录注册