iOS中方法和函数的区别

476 阅读1分钟

函数和方法

  • 函数属于整个文件,方法属于某一个类,方法不能脱离类而存在
  • 函数可以直接调用,方法必须用对象或者类调用
  • 函数属于整个文件,但是如果把函数写在类的声明中会不识别
@interface Person : NSObject
@property (nonatomic,copy) NSString *firstName;
//方法声明
- (void)run;
+ (void)play;
@end

@implementation Person
//方法声明实现
- (void)run{
    NSLog(@"%s",__func__);
}
+ (void)play{
    NSLog(@"%s",__func__);
}
@end

//外部函数
extern void sayHi(){
    printf("sayHi\n");
}
//内部函数
static void sayHello(){
    printf("sayHello");
}

- (void)viewDidLoad {
    [super viewDidLoad];
    Person *p = [[Person alloc]init];
    //方法调用  
    [p run];
    [Person play];
    //函数调用  
    sayHi();
    sayHello();
}