arc4random 이라는 랜덤 함수가 objective c 에 있는데, 다른 곳에도 있는지 사실 잘 모르겠다.
일단 랜덤 함수라면 c/c++ 에 익숙한 사람이라면 rand() 함수가 익숙 할 것이다.
하지만 rand()가 사실상 정말로 랜덤하게 값을 가져 오지 않는 다는 것을 알것이다. rand()가
이뤄질 때 생성된 테이블에서 정해진 값을 뽑아 오는 것이니까. 해서 srand(time(NULL))와 같은
방식으로 랜덤 테이블을 초기화 해주어야 rand() 함수가 진정 랜덤의 기능을 가질 수 있는데 또한 1초
안에 srand(time(NULL))로 초기화 해도 다시 rand() 함수를 호출하게 되면 의미가 없어 지는데,
(예를 들어 for문에서 호출된다던지....)
arc4random 이 친구는 그런거 필요없다고 한다. 그냥 호출해도 랜덤한 값이 나온다.
하지만, 느리다. loop안에서 호출된다면 성능을 많이 떨어 뜨린다.
'Objective-C' 카테고리의 다른 글
[Objective-C] 자료형 변환 (NSNumber, int) (0) | 2013.02.13 |
---|---|
[Objective-C] CGRectContainsPoint (0) | 2013.02.13 |
[Objective-C] nonatomic 이란? (0) | 2013.02.13 |
[Objective-C] assign, retain, copy 란? (0) | 2013.02.13 |
[Objective-C] may not respond to (0) | 2013.02.13 |