新手求救,无法清除b2Body

//想设定为每按一次按钮,会有一个球消失 结果一按,就出错了
-(void)ButtonTapped:(id)sender {

b2Body* ballBody = (b2Body*) balls objectAtIndex:0] pointerValue];

world->DestroyBody(ballBody);
}

//每夹一段时间出一现颗球
-(void)addBall:(ccTime)delta{
float randomHeight = (arc4random() 350) +110; float randomWeid = (arc4random() 250) +35;

CCPhysicsSprite*SpriteBall;
SpriteBall=CCPhysicsSprite spriteWithFile:@"ball.png"];
setPTMRatio:PTM_RATIO];  
self addChild:SpriteBall];

CCPhysicsSprite*number;
number=CCPhysicsSpritespriteWithFile:@“Icon-Small@2x.png”];
setPTMRatio:PTM_RATIO];
number.tag=1;
self addChild:number];

b2BodyDef ballBodyDef;
ballBodyDef.type=b2_dynamicBody;
ballBodyDef.position.Set(randomHeight/PTM_RATIO, randomWeid/PTM_RATIO);

b2Body* ballBody1=world->CreateBody(&ballBodyDef);

b2CircleShapecircle;
circle.m_radius=50.0/PTM_RATIO;
setB2Body:ballBody];
setB2Body:ballBody1];

b2Fixture*ballFixture;
b2FixtureDef ballFixtureDef;
ballFixtureDef.shape=&circle;   
ballFixtureDef.density=1.0f; 
ballFixtureDef.friction=0.3f;   
ballFixtureDef.restitution=1.0;
ballFixture=ballBody->CreateFixture(&ballFixtureDef);

NSValue *bodyValue = NSValue valueWithPointer:ballBody1];
balls addObject:bodyValue];

}