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

在这做什么方法参数可以是无类型的吗?

在最近一个工作正常的项目中,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.

相关文章

本程序的编译和运行环境如下(如果有运行方面的问题欢迎在评...
水了一学期的院选修,万万没想到期末考试还有比较硬核的编程...
补充一下,先前文章末尾给出的下载链接的完整代码含有部分C&...
思路如标题所说采用模N取余法,难点是这个除法过程如何实现。...
本篇博客有更新!!!更新后效果图如下: 文章末尾的完整代码...
刚开始学习模块化程序设计时,估计大家都被形参和实参搞迷糊...