gpt4 book ai didi

ios - 带有对象/参数的 NSObject 自定义初始化

转载 作者:技术小花猫 更新时间:2023-10-29 10:30:22 25 4
gpt4 key购买 nike

我想要完成的是类似

Person *person1 = [[Person alloc]initWithDict:dict];

然后在 NSObject“Person”中,有类似的东西:

-(void)initWithDict:(NSDictionary*)dict{
self.name = [dict objectForKey:@"Name"];
self.age = [dict objectForKey:@"Age"];
return (Person with name and age);
}

这让我可以继续使用带有这些参数的 person 对象。这可能吗,还是我必须做正常的

Person *person1 = [[Person alloc]init];
person1.name = @"Bob";
person1.age = @"123";

?

最佳答案

你的返回类型是 void 而它应该是 instancetype

你可以使用你想要的两种类型的代码......

更新:

@interface testobj : NSObject
@property (nonatomic,strong) NSDictionary *data;

-(instancetype)initWithDict:(NSDictionary *)dict;
@end

.m

@implementation testobj
@synthesize data;

-(instancetype)initWithDict:(NSDictionary *)dict{
self = [super init];
if(self)
{
self.data = dict;
}
return self;
}

@end

使用如下:

    testobj *tt = [[testobj alloc] initWithDict:@{ @"key": @"value" }];
NSLog(@"%@",tt.ss);

关于ios - 带有对象/参数的 NSObject 自定义初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19157827/

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