方法与函数
#import <Foundation/Foundation.h>
@interface Person : NSObject
@end
@implementation Person
@end
@interface Car : NSObject
{
@public
int wheels;
}
- (void)run;
- (void)fly;
@end
int main()
{
void test2();
test2();
return 0;
}
@implementation Car
- (void) fly
{
}
void test()
{
NSLog(@"调用了test函数");
}
- (void)run
{
test();
NSLog(@"%d个轮子的车跑起来了", wheels);
}
@end
方法的声明和实现
#import <Foundation/Foundation.h>
@interface JiSuanQi : NSObject
- (double)pi;
- (int)pingFang:(int)num;
- (int)sumWithNum1:(int)num1 andNum2:(int)num2;
@end
@implementation JiSuanQi
- (double)pi
{
return 3.14;
}
- (int)pingFang:(int)num
{
return num * num;
}
- (int)sumWithNum1:(int)num1 andNum2:(int)num2
{
return num1 + num2;
}
@end
int main()
{
JiSuanQi *jsq = [JiSuanQi new];
int a = [jsq sumWithNum1:20 andNum2:5];
NSLog(@"%i", a);
return 0;
}
设计方法
#import <Foundation/Foundation.h>
@interface Car : NSObject
{
@public
int speed;
}
- (int)compareSpeedWithOther:(Car *)other;
@end
@implementation Car
- (int)compareSpeedWithOther:(Car *)other
{
return speed - other->speed;
}
@end
int main()
{
Car *c1 = [Car new];
c1->speed = 300;
Car *c2 = [Car new];
c2->speed = 250;
int a = [c1 compareSpeedWithOther:c2];
NSLog(@"a=%d", a);
return 0;
}
匿名对象
@interface Car : NSObject
{
@public
int speed;
}
- (void)run;
@end
@implementation Car
- (void)run
{
NSLog(@"速度为%d的车子跑起来了", speed);
}
@end
int main()
{
[Car new]->speed = 300;
[[Car new] run];
return 0;
}