Согласно курсу Objective-C Стэнфордского университета, осень 2010/2011, лекция 3:
typedef struct {
float x;
float y;
} Point;
@interface Bomb
@property Point position;
@end
@interface Ship : Vehicle {
float width, height;
Point center;
}
@property float width;
@property float height;
@property Point center;
- (BOOL)getsHitByBomb:(Bomb *)bomb;
@end
@implementation Ship
@synthesize width, height, center;
- (BOOL)getsHitByBomb:(Bomb *)bomb
{
float leftEdge = self.center.x - self.width/2;
float rightEdge = ...;
return ((bomb.position.x >= leftEdge) &&
(bomb.position.x <= rightEdge) &&
(bomb.position.y >= topEdge) &&
(bomb.position.y <= bottomEdge));
}
@end
Почему в интерфейсе нет функции float leftEdge и float rightEdge?
Кроме того, обратный случай, это означает, что если все эти случаи верны, он возвращает ДА, если нет, то НЕТ (или 1, если случаи истинны, 0, если ложь). Правильно?