当C下标运算符的基本操作数具有Objective-C对象指针类型时,会发生Objective-C下标表达式。由于这可能与值上的指针算术冲突,因此这些表达式仅在现代Objective-C运行时支持,该运行时明确禁止此类算法
我最近注意到一些奇怪的东西似乎在objective-c中起作用。
当我有一个数组时,
NSArray *myArray = @[@"1", @"b", @"3", @"d"];
我通常可以通过
访问第二个元素NSString *element = [myArray objectAtIndex:2];
但是我现在似乎也可以通过它访问它。
NSString *element = myArray[2];
有没有人知道这现在是一个定义的行为,因此可以安全使用,还是应该避免使用它?感谢任何可以帮助的人!!