Objective c 预先初始化的NSArray表示计数为零?

Objective c 预先初始化的NSArray表示计数为零?,objective-c,macos,Objective C,Macos,我试图调试一个问题,我创建的NSArray显示它没有元素 NSArray *libPaths = [NSArray arrayWithObjects: [[NSBundle mainBundle] pathForResource:@"libcustomx.2" ofType:@"dylib"], INSTALL_PATH, [@"~/Library/Application Support/MyApp/libcustomx.2

我试图调试一个问题,我创建的NSArray显示它没有元素

NSArray *libPaths = [NSArray arrayWithObjects:
            [[NSBundle mainBundle] pathForResource:@"libcustomx.2" ofType:@"dylib"],
            INSTALL_PATH,
            [@"~/Library/Application Support/MyApp/libcustomx.2.dylib" stringByExpandingTildeInPath],
            @"/usr/lib/libcustomx.2.dylib",
            nil];

NSUInteger count = libPaths.count

这是一个项目的Objective-C代码,该项目最初设计用于在MacOS X 10.6上构建,现在我正尝试使用Xcode 7.2.1在MacOS X 10.11上构建它。由于对Objective-C不太熟悉,我不确定是什么原因导致新数组此时长度为零?

如果应用程序包中没有名为libcustomx.2.dylib的文件,则第一个值将为
nil
,数组将为空

如果应用程序包中没有名为libcustomx.2.dylib的文件,则第一个值将为
nil
,数组将为空

是的,似乎是这样。如果我将应用程序包放在列表的末尾,这样可能会导致“nil,nil”,如果包为nil,那可以吗?如果它满足您的需求,那就可以了。是的,似乎是这样。如果我将应用程序包放在列表的末尾,这样可能会导致“nil,nil”,如果包为nil,那可以吗?如果它满足您的需要,那就可以了。