在xcode仪器中测试我的IOS应用程序时,我有几次内存泄漏。任何人都可以看到为什么标有“ - >”的行正在泄漏?
--> CLLocationCoordinate2D newCoord = CLLocationCoordinate2DMake(latitude, longitude);
--> MapAnnotation* annotation = [[MapAnnotation alloc] initWithCoordinate:newCoord];
[mapView addAnnotation:annotation];
[annotation release];
另外,我似乎也有一些泄漏的结构;
--> double placeLat = [place.latitude doubleValue];
没有指向“placeLat”变量的指针,所以我无法释放它? :/
谢谢
克里斯蒂
答案 0 :(得分:2)
您的代码是正确的,就像您展示的一样。
您必须记住的一件事是,泄漏会向您显示泄漏对象的创建位置,而不是您做错的地方会产生泄漏。
这是一个重要的区别。实际上,在第一种情况下,很可能是在代码中其他地方泄露的annotation
对象。您应该检查Instruments将您显示为堆栈跟踪的所有执行流程。