странный цикл box2d (target-c, cocos2d, box2d) - PullRequest
0 голосов
/ 04 ноября 2011

Я читал учебник с веб-сайта Рэя Вендерлиха и нашел этот цикл:

for(b2Body *b = _world->GetBodyList(); b; b=b->GetNext()) { 

так что, здесь b перезаписано?я нахожу это немного странным

и вот код:

for(b2Body *b = _world->GetBodyList(); b; b=b->GetNext()) {    
        if (b->GetUserData() != NULL) {
            CCSprite *ballData = (CCSprite *)b->GetUserData();
            ballData.position = ccp(b->GetPosition().x * PTM_RATIO,
                                    b->GetPosition().y * PTM_RATIO);
            ballData.rotation = -1 * CC_RADIANS_TO_DEGREES(b->GetAngle());
        }        
    }

спасибо

1 Ответ

3 голосов
/ 04 ноября 2011

Да, b перезаписано. Но b это просто указатель на связанный список объектов b2Body. Цель b - указывать на каждого b2Body в списке, по одному за раз.

...