我正在初始化两个NSArrays.为什么一个人工作而另一个人失败?

mim*_*imc 0 objective-c ios5 xcode4.3

我正在尝试使用以下代码初始化两个NSArrays

self.fillingTypes = [[NSArray alloc] initWithObjects:@"Ham",@"Turkey",@"Peanut Butter", @"Tuna Salad",@"Roast Beef",@"Vegemite", nil];

self.breadTypes = [[NSArray alloc] initWithObjects:@"White",@"Whole Wheat", @"Rye", "@Sourdough", @"Seven Grain", nil];`
Run Code Online (Sandbox Code Playgroud)

fillingTypes数组有效,但breadTypes数组崩溃发送EXC_BAD_ACCESS错误.当我逐步完成它时,breadTypes数组说"变量不是CFArray".为什么一个阵列工作而另一个阵列失败?

Dan*_*iel 7

问题是你在那里"@Sourdough"而不是@"Sourdough",就像评论所说的那样产生警告并且会使程序崩溃......该行应该读取

self.breadTypes = [[NSArray alloc] initWithObjects:@"White",@"Whole Wheat", @"Rye", @"Sourdough", @"Seven Grain", nil];
Run Code Online (Sandbox Code Playgroud)