Looking for objective-c Keywords? Try Ask4Keywords

Objective-C Language 주장


@implemenetation Triangle

...

-(void)setAngles:(NSArray *)_angles {
    self.angles = _angles;
    
    NSAssert((self.angles.count == 3), @"Triangles must have 3 angles. Array '%@' has %i", self.angles, (int)self.angles.count);
    
    CGFloat angleA = [self.angles[0] floatValue];
    CGFloat angleB = [self.angles[1] floatValue];
    CGFloat angleC = [self.angles[2] floatValue];
    CGFloat sum = (angleA + angleB + angleC);
    NSAssert((sum == M_PI), @"Triangles' angles must add up to pi radians (180°). This triangle's angles add up to %f radians (%f°)", (float)sum, (float)(sum * (180.0f / M_PI)));
}

이러한 어설 션을 수행하면 예외가 발생하면 삼각형 각도가 잘못 부여되지 않습니다. 삼각형보다 예외를 던지지 않고 진정한 삼각형이 아닌 경우 나중에 코드에서 버그가 발생할 수 있습니다.