简单的问题......我对我的代码有一些评论并删除了它们并得到了一个错误。几个小时后,我到达了源头。
此代码有效:
switch (indexPath.row) {
case 0:
NSLog(@"case 0");
break;
case 1: // Clients
NSLog(@"case 1");
ViewClientListTableController *viewListTableController = [[ViewClientListTableController alloc] init];//]WithNibName:@"BrowseViewController" bundle:nil];
viewListTableController.managedObjectContext = self.managedObjectContext;
[self.navigationController pushViewController:viewListTableController animated:YES];
//[self.navigationController setNavigationBarHidden:NO];
[viewListTableController release];
break;
}
下一个(通过删除 NSLog(@"case 1"); )不起作用:
switch (indexPath.row) {
case 0:
NSLog(@"case 0");
break;
case 1: // Clients
ViewClientListTableController *viewListTableController = [[ViewClientListTableController alloc] init];//]WithNibName:@"BrowseViewController" bundle:nil];
viewListTableController.managedObjectContext = self.managedObjectContext;
[self.navigationController pushViewController:viewListTableController animated:YES];
//[self.navigationController setNavigationBarHidden:NO];
[viewListTableController release];
break;
}
如您所见,只有 NSLog 行不见了。编译器给了我2个错误:
RootViewController.m:212:错误:“ViewClientListTableController”之前的预期表达式
RootViewController.m:213: error: 'viewListTableController' undeclared (首先在这个函数中使用)
当然,一个答案是离开 NSLog 行,但真的……为什么会发生这个错误?