Как сделать dynamic_cast в объективе c - PullRequest
0 голосов
/ 08 февраля 2011

Я хотел бы написать этот код для цели c:

    bool BordVertical::collisionwith( Jeu& jeu, ElementJeu& element )
{
    // Verify if the element is balle ype
    Balle* balle = dynamic_cast<Balle*>( &element ) ;
    if( balle )
    {
        balle->Vx( -balle->Vx() ) ;
        return true ;
    }
    return false ;
}

ball - это подкласс ElementJeu ... Существует ли что-нибудь подобное в obj-c?

Спасибо

1 Ответ

3 голосов
/ 08 февраля 2011

Тебе это не нужно. Objective-C знает тип ваших объектов.

- (BOOL) collisionwith:(ElementJeu*)element {
    if ([element isKindOfClass:[Balle class]]) {
        [element setVx:[element getVx]];
        return YES;
    }
    return NO;
}

PS: jeu является избыточным.

...