gpt4 book ai didi

ios - initWithObjects 上的局部变量、NSArray、EXEC_BAD_ACCESS

转载 作者:行者123 更新时间:2023-12-01 17:32:08 25 4
gpt4 key购买 nike

我有一些数组,我只需要在我的 .M 文件中,所以我认为我在接口(interface)括号中声明它们,就像在 MyViewController.m 中一样(通过这个,我将它们设为私有(private)变量,用 Java C# 术语)

   @interface MyViewController () {
NSArray *myArray;
}
@end

@implementation FilterViewController
- (void)viewDidLoad
{
[super viewDidLoad];
// This line throws an error
myArray = [NSArray arrayWithObjects: @"1", @"2","3", @"4", nil];

现在最后一行抛出一个 EXEC_BAD_ACCESS,我不知道为什么?

我是来自 C#.Net 的 Objective C 新手,我认为我对声明所做的就像声明私有(private)变量一样,如果那不正确,我很想知道正确的做法。
谢谢。

最佳答案

通常,您会使用此类属性,但使用 ARC 则无关紧要。

但是您遇到的问题是 "3"而不是 @"3" . "3"是一个字符数组,而 @ 是将数组转换为 NSString 的文字。由于 NSArray 只能存储对象,因此当您尝试添加 char* 时它会崩溃

关于ios - initWithObjects 上的局部变量、NSArray、EXEC_BAD_ACCESS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17565454/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com