我需要将 self 传递给方法,我该怎么做?
我不知道 self 是什么类型的对象?
我试过 :(id)dg
最佳答案
当您在类 Foo
的 @implementation
block 内时,self
是 Foo*
。这意味着您可以将方法参数键入 Foo*
或 id
(= 任何对象,不进行类型检查):
@class Foo, SomeCollaborator;
@interface SomeCollaborator
- (void) doSomethingWithMe: (Foo*) myself;
- (void) doSomethingWithMe2: (id) myself;
@end
@implementation Foo
- (void) someFooMethod {
[someCollaborator doSomethingWithMe:self];
}
@end
https://stackoverflow.com/questions/4213505/