调用方法两次崩溃应用程序

时间:2010-09-07 13:45:51

标签: iphone objective-c arrays memory-management graph

我正在编写一个应用程序,它绘制了一个图形,并使用下面的方法返回这些点的数组。我有两个视图,每个视图显示不同的图,但两者都有相同的方法。无论使用哪个图表,当应用程序到达“NSArray *读取...”行时,应用程序都会崩溃。我无法弄清楚为什么,但我猜它可能与内存管理有关。有没有人有任何想法我怎么解决这个问题?

-(NSArray*)loadPoints{

    Vehicle *vehicle = [DataModel theDataModel].currentVehicle;

    NSArray *readings = [(NSArray*)vehicle.rVehicleMileage autorelease];

    NSSortDescriptor *descriptor = [[[NSSortDescriptor alloc] initWithKey:@"dteDate" ascending:NO] autorelease];

    readings = [readings sortedArrayUsingDescriptors:[NSArray arrayWithObject:descriptor]];

    return readings;
}

谢谢,   威廉

1 个答案:

答案 0 :(得分:4)

NSArray *readings = [(NSArray*)vehicle.rVehicleMileage autorelease];

你不应该在你不拥有的某个对象上调用-autorelease。删除-autorelease,它应该正确运行。