加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

objective-c – 方法参数wihout类型?

发布时间:2020-12-16 09:43:01 所属栏目:百科 来源:网络整理
导读:我在这做什么方法参数可以是无类型的吗? 在最近一个工作正常的项目中,App已经在商店中 – 到目前为止没有问题,我在.h文件中执行了以下操作: @property (strong,nonatomic) NSManagedObject *myPerson;- (HKPersonPicker*) initWithPerson:person;- (HKPers
我在这做什么方法参数可以是无类型的吗?

在最近一个工作正常的项目中,App已经在商店中 – 到目前为止没有问题,我在.h文件中执行了以下操作:

@property (strong,nonatomic) NSManagedObject          *myPerson;
- (HKPersonPicker*) initWithPerson:person;
- (HKPersonPicker*) initWithPerson:person delegate:(id <HKPersonPickerDelegate>)delegate;

我打算这样做,但没有:

- (HKPersonPicker*) initWithPerson:(NSManagedObject*)person;
- (HKPersonPicker*) initWithPerson:(NSManagedObject*)person delegate:(id <HKPersonPickerDelegate>)delegate;

.m文件的相应部分:

- (HKPersonPicker*) initWithPerson:person
{
    self = [super init];
    if(self){
        self.myPerson = person;
    }
    return (self);
}

- (HKPersonPicker*) initWithPerson:person delegate:(id <HKPersonPickerDelegate>)delegate
{
    self = [self initWithPerson:person];
    if(self){
        self.delegate = delegate;
    }
    return (self);
}

正如您所看到的,我没有对此人物对象做任何特殊处理,只是将其分配给属性myPerson.由于我没有调用任何对象的方法或访问其数据,因此编译器不需要知道有关该对象的任何信息.但是从编译器的角度来看它是什么呢?输入ID?什么?有没有默认类型?

如你所见,我没有任何实际问题.我只是好奇.希望这个问题不会破坏任何SO规则.

解决方法

使用C,默认类型是int,但使用Objective-C它是id.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读