Я написал код, как это,Очевидная утечка, но clang статический анализатор didnot обнаружить, Почему?
- (NSString*) caleSignParam:(NSMutableArray*)postData
{
NSMutableArray* keyArray = [[NSMutableArray alloc] initWithCapacity:50];
......
NSArray* sortedKeys = [keyArray sortedArrayUsingComparator:
(NSComparator)^(NSString *obj1, NSString *obj2) {
return [obj1 compare:obj2 options:NSLiteralSearch];
}];
......
NSString* signStr = aString;
return signStr;
}
Я забыл выпустить keyArray, и с использованием не-ARC, но когда я нажимаю «Анализ» в меню Xcode, он didnot обнаружить утечку keyArray.
Если я прокомментирую строку «NSArray * sortedKeys = ...», она может обнаружить утечку keyArray.
Интересно, что не так со статическим анализатором.
Я очень ценю вашу помощь.
thank u. Я знаю, что статический анализатор не может обнаруживать ошибки в некоторых случаях и иногда сообщает об ошибке, которая не является ошибкой. Я действительно хочу знать, почему он не может обнаружить такую очевидную утечку. – dx2ztm76