铛添加关键字instancetype的是,据我所看到的,替换id为返回类型-alloc和init.
使用instancetype而不是id?
我来自一个C#背景,你初始化一个类,然后像这样返回自己
public class MyClass{
public int Id;
public string Name;
}
MyClass classInstance = new MyClass();
:
:
Run Code Online (Sandbox Code Playgroud)
我知道c#与目标c不同,但我正试图找到一种方法来轻松理解客观c如何使转换变得更容易.并找出最佳实践.
无论如何,我的问题是为什么你必须创建一个方法并返回一个"id"而不是返回它自己的类型?像这样:
- (id)initWithID:(NSInteger)id name:(NSString *)name
{
self = [self init];
if (self) {
self.ID = id;
self.name = name;
}
return self;
}
Run Code Online (Sandbox Code Playgroud)
谢谢你的时间