Я использую ARC для обновления моего старого проекта.У меня есть класс Filehelper, в котором я использую c-функции, например, для методов, которые мне нужны почти во всех проектах.(например, загрузить plist и т. д.)
ViewController
NSDictionary* dictionary = getDictionaryFromPlistWithName(@"TestFile", @"plist");
Filehelper.m
#pragma Returns content of plist as NSDictionary
NSDictionary* getDictionaryFromPlistWithName(NSString* fileName, NSString* pathExtension) {
NSString *path = [[NSBundle mainBundle] pathForResource:fileName ofType:pathExtension];
BOOL fileExists = [[NSFileManager defaultManager] fileExistsAtPath:path];
if(fileExists){
NSDictionary* dictionary = [NSDictionary dictionaryWithContentsOfFile:path];
return dictionary;
}
else{
[NSException raise:@"File not found" format:@"path %@", path];
return nil;
}
}
Я получаю эту ошибку:
* ошибка: автоматический подсчет ссылок Проблема: неявное преобразование int в NSDictionary запрещено с ARC
Любые идеи, как это исправить, чтобы использовать его с iOS5?Я прочитал кое-что, что мне нужно использовать (__bridge NSDictionary *), но это не помогло.
PS.Каков ваш рабочий процесс для классов, которые вам уже нужны?Использовать тоже C-функции? = Как лучше?