OC-方法的声明和实现、匿名对象

时间:2025-03-12 16:07:37

方法声明:

  OC-方法的声明和实现、匿名对象

方法调用:

OC-方法的声明和实现、匿名对象

*冒号也是方法名的一部分

*同一个类中不允许两个对象方法同名

练习

给Car类设计一个方法,用来和其他车比较车速,如果快返回1,慢返回-1,相同返回0

#import <Foundation/Foundation.h>
@interface Car : NSObject
{
@public
int speed;
} - (int)compareSpeedWithOther:(Car *)other; @end @implementation Car
- (int)compareSpeedWithOther:(Car *)other;
{
//speed //调用方法的speed
//other->speed//访问传入的speed
return speed - other->speed;
}
@end int main()
{
Car *c1 = [Car new];
c1->speed = ; Car *c2 = [Car new];
c2->speed = ; int a = [c1 compareSpeedWithOther:c2]; CSLog(@"a=%d", a); //输出20
}

匿名:(不推荐写)

int main()
{
Car *c; //定义指针
c = [Car new]; //创建对象,赋值给指针
//可以合成为一句:Car *c = [Car new];
[c run]; return ;
}
//匿名
int main()
{
[Car new]->speed = ;
[[Car new] run]; //speed 为0 ,与上边无关系 return ;
}

相关文章