kyuseo의 게임 프로그래밍
STL의 random_shuffle을 이용하여 일반 배열을 무작위로 랜담하게 만드는 방법 본문
개요.. |
STL의 random_shuffle을 이용하여 vector 이나 list 가 아닌 일반 배열을 무작위로 랜덤하게 만드는 방법을 설명 드립니다.
일반 배열을 랜덤하게 섞는 소스코드 |
아래 소스코드와 같이 배열의 시작과 배열의 마지막 값 포인터를 인자로 하면 무작위로 값이 섞이게 되어있습니다.
소스코드
BYTE m_Ball[ 10 ];
// 볼을뒤섞는다. for( int i = 0; i < 10; i++ ) { m_Ball[i] = i+1; }
random_shuffle( m_Ball, m_Ball + 10 );
// 볼을검증한다. for( int i = 0; i < 10 ; i++ ) { static int nTrace = 0; TRACE( "%s(%d) : nTrace = %d \n" , __FILE__, __LINE__, m_Ball[i] ); } |
결과값
: nTrace = 9 : nTrace = 2 : nTrace = 10 : nTrace = 3 : nTrace = 1 : nTrace = 6 : nTrace = 8 : nTrace = 4 : nTrace = 5 : nTrace = 7 |