ios - 预期标识符或 ´(´ 括号错误 (?)

标签 ios objective-c iphone

<分区>


这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助 future 的读者。

关闭 8 年前

当我尝试将核心数据添加到我的单 View 项目时出现此错误,我正在按照此处的指南操作 http://blog.shalomfriss.com/?p=1016 .我的 AppDelegate-m 文件中的第一个括号出现此错误,该括号位于 - (void)saveContext; 上方。我也会把代码放在这里,这样我可以获得一些帮助,但我认为问题出在所有括号的某个地方,我现在一直在尝试修复它,但我无法让它工作,所以这就是我的原因我在这里发布我的问题:)。

AppDelegate h - 文件

#import <UIKit/UIKit.h>

@interface AppDelegate: UIResponder <UIApplicationDelegate>
@property (strong, nonatomic)  UIWindow *window;

@property (readonly, strong, nonatomic) NSManagedObjectContext *managedObjectContext;
@property (readonly, strong, nonatomic) NSManagedObjectModel *managedObjectModel;
@property (readonly, strong, nonatomic) NSPersistentStoreCoordinator *persistentStoreCoordinator;

-(void)saveContext;
-(NSURL *)applicationDocumentsDirectory;

@end

这是 AppDelegate m 文件

#import "AppDelegate.h"


@implementation AppDelegate;

@synthesize managedObjectContext = _managedObjectContext;
@synthesize managedObjectModel = _managedObjectModel;
@synthesize persistentStoreCoordinator = _persistentStoreCoordinator;
@end



{

- (void)saveContext

    {
    NSError *error = nil;
    NSManagedObjectContext *managedObjectContext = self.managedObjectContext;
    if (managedObjectContext != nil) {
        if ([managedObjectContext hasChanges] &amp;&amp; ![managedObjectContext save:&amp;error]) {
            NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
            abort();
            }
        }
    }


    #pragma mark - Core Data stack

- (NSManagedObjectContext *)managedObjectContext
    {
    if (_managedObjectContext != nil) {
        return _managedObjectContext;
    }

    NSPersistentStoreCoordinator *coordinator = [self persistentStoreCoordinator];{
        if (coordinator != nil) {
        _managedObjectContext = [[NSManagedObjectContext alloc] init];
        [_managedObjectContext setPersistentStoreCoordinator:coordinator];
        }
            return _managedObjectContext;
    }

- (NSManagedObjectModel *)managedObjectModel
    {
    if (_managedObjectModel != nil)
        return _managedObjectModel;
    }
    NSURL *modelURL = [[NSBundle mainBundle] URLForResource:@"MyDataModel" withExtension:@"momd"];
    _managedObjectModel = [[NSManagedObjectModel alloc] initWithContentsOfURL:modelURL];
    return _managedObjectModel;
    }

- (NSPersistentStoreCoordinator *)persistentStoreCoordinator
    {
        if (_persistentStoreCoordinator != nil) {
        return _persistentStoreCoordinator;
    }

    NSURL *storeURL = [[self applicationDocumentsDirectory] URLByAppendingPathComponent:@"YourDataBaseName.sqlite"];

    NSError *error = nil;
    _persistentStoreCoordinator = [[NSPersistentStoreCoordinator alloc] initWithManagedObjectModel:[self managedObjectModel]];
        if (![_persistentStoreCoordinator addPersistentStoreWithType:NSSQLiteStoreType configuration:nil URL:storeURL options:nil error:&amp;error]) {
        NSLog(@"Unresolved error %@, %@", error, [error userInfo]);
        abort();

        }
        return _persistentStoreCoordinator;
    }


#pragma mark - Applications Documents directory


- (NSURL *)applicationDocumentsDirectory
    {
    return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject];
    }

@end

所以,错误在第一个括号的 m 文件中。

最佳答案

实现文件中的这个@end语句和括号是虚假的:

@end    // remove

{       // remove

- (void)saveContext

关于ios - 预期标识符或 ´(´ 括号错误 (?),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25991155/

上一篇:ios - 如何检测 Retina 高清显示屏?

下一篇:iOS自定义带有动态内容的UIButton

相关文章:

ios - XCode:在包中找不到 .app 包

c# - MonoTouch 的性能问题?

iOS XYPieChart 数据源方法未被触发

iphone - 重置 Game Center 沙盒

iphone - 如何创建从右到左的 UITableView?

ios - 如何做放大和变换动画?

ios - 在 Swift 中有一个具有多种类型的变量

ios - UITableViewStyleGrouped 不起作用

objective-c - NSImage colorWithPatternImage : how to tile images from the top instead?

iphone - 如何从 iPhone 的应用程序图标中删除徽章通知符号