'withObject :'를 사용하여 선택기를 통해 float를 전달하려고하지만 객체 만 허용합니다.목표 C - 선택기를 통해 float 전달
[NSNumber numberWithFloat :]를 사용하는 솔루션이 있지만 내 플로트 값이 엉망입니다. 나는 이전과 부동의 값의 테스트 후를하고있는 중이 야, 그리고 이후 그들은 모두 0.0000000
[[self gameObjects] makeObjectsPerformSelector:@selector(update:) withObject: <what to put here>]];
덕분에 미리 반면 사전에 나는, 같은 0.0034324 같은 번호를 얻을!
EDIT 여기 *
는 .... 컨텍스트
-(void) tick:(float)dt{
NSLog(@"%f",dt)
[[self gameObjects] makeObjectsPerformSelector:@selector(update:) withObject:[NSNumber numberWithFloat:dt]];
}
상기로부터 출력 된 번호 0
그러나 선택 방법에서 NOT이다
- (void)update:(float)dt{
NSLog(@"%f",dt);
}
출력은 0
01입니다.
당신이 0.0000000보고 된 예를 게재 할 수 있습니까? NSNumber에서 float을 래핑하는 것이 올바른 대답이기 때문에이를 수정해야합니다. 당신은 방금 그것의 구현에 약간의 실수를했습니다. –
실제로; 당신이 0.00000을 얻고 있다고 생각한다면 실제 숫자가 아닌'nil'의'floatValue'를 취하는 것이 안전한 내기입니다. – Tommy
'update :'에 대한 선언을 보여줍니다. 매개 변수 유형은 무엇입니까? 'NSNumber'를 전달해야하기 때문에'float' 유형이 될 수 없습니다. – rmaddy