使Xcode警告有关向数组或字典添加可为空的属性

时间:2018-12-11 09:03:24

标签: objective-c xcode

是否可能使Xcode发出类似以下代码的警告:

// Model.h

@interface Model : NSObject

@property (strong, nonatomic, nullable) NSString *value;

@end

// Model.m

@implementation Model

@end

// ViewController.m

@implementation ViewController

- (void)test {

    NSMutableArray<NSString *> *values = [NSMutableArray array];

    Model *model = [Model new];

    [values addObject:model.value];
}

@end

1 个答案:

答案 0 :(得分:0)

不,在Objective-C中是不可能的。

这不是实际的警告,但是静态分析器会在确定确实为nil的情况下进行选择,例如:

NSMutableArray *array = NSMutableArray.array;
NSString *string = nil;
[array addObject:string]; // Argument to 'NSMutableArray' method 'addObject:' cannot be nil