Iphone 在两个不同类之间调用函数
我有一个在两个不同类中调用函数的小场景Iphone 在两个不同类之间调用函数,iphone,objective-c,oop,Iphone,Objective C,Oop,我有一个在两个不同类中调用函数的小场景 method { NSLog("printing variables 1 & 2 of secondClass.m"); } 如何调用firstClass方法并将这些变量发送到类进行打印?根据要调用的函数类型,可以创建静态函数。为此,只需声明函数,如+(void)printA:(int)a和b:(int)b 并使用[Class2 printA:a和b:b]调用它,而不使用实例。或者,如果要调用非静态方法,可以使用委派协议 您可以创建一个协
method
{
NSLog("printing variables 1 & 2 of secondClass.m");
}
如何调用firstClass方法并将这些变量发送到类进行打印?根据要调用的函数类型,可以创建静态函数。为此,只需声明函数,如
+(void)printA:(int)a和b:(int)b代码>
并使用[Class2 printA:a和b:b]
调用它,而不使用实例。或者,如果要调用非静态方法,可以使用委派协议
您可以创建一个协议,如
@protocol PrintJobReceiver
- (void)printVariableA:(int)a andB:(int)b;
@end
是否符合第2类的要求
@interface Class2: NSObject <PrintJobReceiver> { }
@end
@implementation Class2
- (void)printVariableA:(int)a andB:(int)b
{
NSLog(@"a: %i b:%i",a,b);
}
@end
然后您可以调用[delegate printVariableA:a和b:b]代码>在类1中。我通常使用它,而不是将引用传递给整个类,以便只显示该类应该使用的函数(并且您不会尝试使用不应该使用的函数)
@interface Class1:NSObject
{
id<PrintJobReceiver> delegate;
}
@property (nonatomic,readwrite, retain) id<PrintJobReceiver> delegate;
@end
@implementation Class1
@synthesize delegate;
@end