Ios 为什么我不能用对象初始化这个NSArray?
我有一个数组,其中包含自定义类的对象。但是,在初始化时,编译器给了我一个错误-Ios 为什么我不能用对象初始化这个NSArray?,ios,objective-c,nsarray,nsobject,Ios,Objective C,Nsarray,Nsobject,我有一个数组,其中包含自定义类的对象。但是,在初始化时,编译器给了我一个错误-“预期的”词法或预处理器“:” interface myClass : NSObject @property (readwrite, strong) NSString* name; @property (readwrite, strong) NSString* home; @property (readwrite, strong) Preference pref; // This is another custom c
“预期的”词法或预处理器“:”
interface myClass : NSObject
@property (readwrite, strong) NSString* name;
@property (readwrite, strong) NSString* home;
@property (readwrite, strong) Preference pref; // This is another custom class
-(id) initWithName:(NSString*) name home:(NSString*) home preference:(Preference) preference;
end
@interface MyViewController()
@property (nonatomic, strong) NSArray *rowArray;
@end
@implementation MyViewController
...
...
...
- (void) initializeArray
{
self.rowArray = @{
[[myClass alloc] initWithName:@"Harry" home:@"New York" preference :Acura],
[[myClass alloc] initWithName:@"Win" home:@"Seattle" preference :Toyota];
};
}
有人能告诉我哪里出了问题,为什么会出现这个错误吗?对于数组来说,它是方括号
NSArray*anArray=@[obj1,obj2]
在你发布的代码中,它试图制作一本字典
NSDictionary*aDict=@{“key1”:obj1,@“key2”:obj2}
这就是为什么它说它需要一个:
这行应该是
self.rowArray = @[
[[myClass alloc] initWithName:@"Harry" home:"New York" preference :Acura],
[[myClass alloc] initWithName:@"Win" home:"Seattle" preference :Toyota];
];
正如其他人指出的,代码中还有一些其他错误,这些城市名称不是NSString的,但我想这只是一个示例片段。数组的名称是方括号
NSArray*anArray=@[obj1,obj2]
在你发布的代码中,它试图制作一本字典
NSDictionary*aDict=@{“key1”:obj1,@“key2”:obj2}
这就是为什么它说它需要一个:
这行应该是
self.rowArray = @[
[[myClass alloc] initWithName:@"Harry" home:"New York" preference :Acura],
[[myClass alloc] initWithName:@"Win" home:"Seattle" preference :Toyota];
];
正如其他人指出的,代码中还有一些其他错误,这些城市名称不是NSString的,但我想这只是一个示例片段。在接口之前应该有一个@符号。或者这是一个复制粘贴错误?纽约和西雅图不是NSStrings。哈哈。。。谢谢这是一个重新键入的示例。在接口之前应该有一个@符号。或者这是一个复制粘贴错误?纽约和西雅图不是NSStrings。哈哈。。。谢谢这是一个重新键入的样本,就是这样。该死,我需要大一点的眼镜。谢谢就这样。该死,我需要大一点的眼镜。谢谢